android - 改造调用请求只接收消息部分,不接收正文部分
问题描述
在对我的代码进行一些更改后,我可以向 API 发送改造请求。
现在的问题是我只从响应中接收消息部分,而不是正文部分。这是界面:
public interface JsonPlaceHolderApi {
@GET("posts")
Call<List<Post>> getPosts();
@FormUrlEncoded
@POST("token")
Call <ResponseBody> createLoginRequest(@Field("username") String username,
@Field("password") String password,
@Field("grant_type") String grant_type,
@Field("latitude") String latitude,
@Field("longitude") String longitude
);
}
这是请求部分:
private void login_Request() {
Log.d("ESTOY EN LOGIN REQUEST", "ESTOY EN LOGIN REQUEST");
JsonPlaceHolderApi jsonPlaceHolderApi = retrofit.create(JsonPlaceHolderApi.class);
Call<ResponseBody> call = jsonPlaceHolderApi.createLoginRequest("HALEJANDRO", "ALEJANDR0123", "password", "19.4953148", "-99.1131595");
call.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
Log.d("ESTOY EN LOGIN REQUEST", "ESTOY EN LOGIN REQUEST success "+response);
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
Log.d("ESTOY EN LOGIN REQUEST", "ESTOY EN LOGIN REQUEST error");
}
});
}
这是收到的回复:
Response{protocol=http/1.1, code=200, message=OK, url=http://10.....:5000/token}
我需要让身体部位进一步处理接收到的数据。
编辑
使用 REST API 客户端(如 postman)收到的响应如下所示:
解决方案
您将使用response.body()
.
像这样:
call.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
if (response.isSuccessful()) {
String object = response.body().string();
Log.d("response string.....", object);
}
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
}
});
推荐阅读
- reactjs - React.createElement: type is invalid -- 期望一个字符串(对于内置组件)或一个类/函数(对于复合组件)但是得到:null
- c# - 将 Long 转换为整数数组
- python - 如何在 Seaborn (Python) 中“移动”轴值?
- c++ - 在 qt 中分配 QGraphicsDropShadowEffect 对象时不会发生复制构造函数
- python - 保留 x 行并从 csv 文件中删除所有行
- css - 当我直接打开索引文件时,没有出现svg
- unity3d - Unity CS1503“无法转换...”在 Instancing Prefab
- r - R grepl:组合条件
- ios - 用于更新 SKMutableTexture 的 Objective C 语法
- xslt - xsl:for-each-group 不给我包含在组中的组边界