我正在使用 postman 扩展来发送请求。我想对 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);
关于android - 带参数改造post请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35036318/