android-使用参数改装发布请求

我正在使用邮递员扩展名进行后期处理.我想用android发出相同的请求.我使用改造库来访问我的目标.但是我无法获得成功的结果.我的代码错误在哪里?

邮递员:
android-使用参数改装发布请求

我的界面:

public interface Interfacem {

    @FormUrlEncoded
    @POST("/login")
    Call<ResponseBody> getResponse(@Field("signin[username]") String username,@Field("signin[password]")String password );
}

和改造用途:

Retrofit retrofit = new Retrofit.Builder()
                        .baseUrl("http://myurl.com")
                        .build();

                Interfacem service = retrofit.create(Interfacem.class);
                Call<ResponseBody> result =service.getResponse("myUsername","myPassword");
                result.enqueue(new Callback<ResponseBody>() {
                    @Override
                    public void onResponse(Response<ResponseBody> response) {
                        try {
                            System.out.println(response.body().string().toString());
                        } catch (IOException|NullPointerException e) {
                            e.printStackTrace();
                        }

                    }

                    @Override
                    public void onFailure(Throwable t) {
                        t.printStackTrace();
                    }
                });

解决方法:

尝试这个
提供身体

public class SignBody {
  @SerializedName("signin[username]") @Expose private String username;
  @SerializedName("signin[password]") @Expose private String password;
}

将界面更改为

@POST("/login")
    Call<ResponseBody> getResponse(@Body SignBody body);
上一篇:java-Retrofit对象返回为null


下一篇:如何使用RxJava重复网络通话