改造 2 post rxjava(登录)
retrofit 2 post rxjava (login)
我是 retrofit2 和 rxjava 的新手,我能够使用 GET 从 api 获取信息,但现在,使用 POST 进行登录请求不起作用怎么办也是。
Application application = Application.get(mLoginView.getContext());
Service Service = application.getmService();
Log.i(TAG,""+username);
Log.i(TAG,""+password);
mSubscription = Service.login(username,password)
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(new Subscriber<User>() {
@Override
public void onCompleted() {
Log.i(TAG,"User: " + mUser.getHash());
}
@Override
public void onError(Throwable e) {
e.printStackTrace();
Log.i(TAG,"USERNAME DON'T EXIST");
}
@Override
public void onNext(User user) {
// LoginPresenter.this.mUser = user;
}
});
服务:
public interface Service {
String mUrl = "https://blabla.com/api/index.php/"; // TODO Change
@FormUrlEncoded
@POST("user/login")
Observable<User> login(@Field(value="email",encoded=true) String email, @Field(value="password",encoded = true) String password );
我输入一个 POST 和用户名并从现有用户那里传递,return 我得到一个 404 页面而不是我应该得到的哈希值。
谢谢
我忘了这是在这里,几个月前我找到了一个解决方案,我所做的是创建一个对象 UserCredentials 来执行正文请求和一个对象来获取响应。
@POST("user/login")
Observable<LoginResponse> login(@Body UserCredentials userCredentials);
我是 retrofit2 和 rxjava 的新手,我能够使用 GET 从 api 获取信息,但现在,使用 POST 进行登录请求不起作用怎么办也是。
Application application = Application.get(mLoginView.getContext());
Service Service = application.getmService();
Log.i(TAG,""+username);
Log.i(TAG,""+password);
mSubscription = Service.login(username,password)
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(new Subscriber<User>() {
@Override
public void onCompleted() {
Log.i(TAG,"User: " + mUser.getHash());
}
@Override
public void onError(Throwable e) {
e.printStackTrace();
Log.i(TAG,"USERNAME DON'T EXIST");
}
@Override
public void onNext(User user) {
// LoginPresenter.this.mUser = user;
}
});
服务:
public interface Service {
String mUrl = "https://blabla.com/api/index.php/"; // TODO Change
@FormUrlEncoded
@POST("user/login")
Observable<User> login(@Field(value="email",encoded=true) String email, @Field(value="password",encoded = true) String password );
我输入一个 POST 和用户名并从现有用户那里传递,return 我得到一个 404 页面而不是我应该得到的哈希值。
谢谢
我忘了这是在这里,几个月前我找到了一个解决方案,我所做的是创建一个对象 UserCredentials 来执行正文请求和一个对象来获取响应。
@POST("user/login")
Observable<LoginResponse> login(@Body UserCredentials userCredentials);