Android 改装2后rxjava(登录)

Android 改装2后rxjava(登录),android,post,retrofit,rx-java,retrofit2,Android,Post,Retrofit,Rx Java,Retrofit2,我是使用改型2和rxjava的新手,我能够使用GET从api获取信息,但现在,使用POST作为登录请求也不起作用 Application application = Application.get(mLoginView.getContext()); Service Service = application.getmService(); Log.i(TAG,""+username); Log.i(TAG,""+password);

我是使用改型2和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;
                    }
                });
Application=Application.get(mLoginView.getContext());
服务=application.getmService();
Log.i(标记“”+用户名);
Log.i(标签“”+密码);
mSubscription=Service.login(用户名、密码)
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(新订户(){
@凌驾
未完成的公共无效(){
Log.i(标记“User:+mUser.getHash());
}
@凌驾
公共无效申报人(可丢弃的e){
e、 printStackTrace();
Log.i(标记“用户名不存在”);
}
@凌驾
public void onNext(用户){
//LoginPresenter.this.mUser=用户;
}
});
服务:

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 );
公共接口服务{
字符串mUrl=”https://blabla.com/api/index.php/“;//待办事项更改
@FormUrlEncoded
@POST(“用户/登录”)
可观察登录(@Field(value=“email”,encoded=true)字符串电子邮件,@Field(value=“password”,encoded=true)字符串密码);
我输入一篇带有用户名的帖子,并从现有用户那里通过,然后返回404页面,而不是我应该得到的哈希值


谢谢

我忘了这是在这里,我在几个月前找到了一个解决方案,我所做的是创建一个对象UserCredentials来执行body请求,并创建一个对象来获取响应

@POST("user/login")
Observable<LoginResponse> login(@Body UserCredentials userCredentials);
@POST(“用户/登录”)
可观察的登录(@Body UserCredentials UserCredentials);

你确定URL是正确的吗?是的,代码中的URL是一个示例,但我确定代码中的URL是正确的
username
pass
URL是由你的程序编码的吗?如何调用它?你指的是可观察的?为此,你需要在渐变编译'io.reactivex:rxandroid:1.2.0'中使用rxjava库