当我向服务器发送请求时,此响应返回:
{"data":{"id":19,"slug":"\u0645\u0646-\u0647\u0631-\u0639\u0644\u0645-\u0627\u0632-\u0641\u0642\u0637-\u0641\u06cc-5","category_id":3,"title":"\u0645\u0646 \u0647\u0631 \u0639\u0644\u0645 \u0627\u0632 \u0641\u0642\u0637 \u0641\u06cc","needtype":1,"price":366,"city":"\u0634\u0627\u0647\u0631\u0648\u062f","description":"\u0633\u06cc\u062f \u0642\u0648 \u0627\u0648","connection":1,"answer_time":null,"immidiatetype":0,"university":"\u062f\u0627\u0646\u0634\u06af\u0627\u0647 \u0635\u0646\u0639\u062a\u06cc \u0634\u0627\u0647\u0631\u0648\u062f","image1":null,"image2":null,"counter":1,"phone":"09055064918","telegram":"qqqqqu","fake_id":"kHJbalwj2Z","created_at":"\u06f1\u06f3\u06f9\u06f8-\u06f0\u06f6-\u06f1\u06f9 \u06f1\u06f9:\u06f2\u06f4","destination":"\u0645\u0646\u062a","gender":"1","car_type":"\u0641\u0631\u06cc\u062f \u0628\u06cc\u0633\u062a \u0639\u062f\u062f","car_brand":"\u0647\u06cc\u0641\u0627 \u0628\u06cc\u0637\u0631\u0641\u06cc","number":"2","date_hour":"\u0645\u062f \u062a\u0627 \u0627\u0632 \u0644\u0698 \u0628\u06cc","date_day":"988","like":false}}
但真正的输出是:
{
"data": {
"id": 19,
"category_id": 3,
"needtype": 1,
"price": 366,
"connection": 1,
"answer_time": null,
"immidiatetype": 0,
"image1": null,
"image2": null,
"counter": 1,
"phone": "09055064918",
"telegram": "qqqqqu",
"fake_id": "kHJbalwj2Z",
"gender": "1",
"number": "2",
"date_day": "988",
"like": false
}
}
Api:
@POST("/api/teezer/{cat}/{slug}")
Call<ResponseBody> getSpecificTraining(@Path("cat") int Category, @Path("slug") String slug);
我的服务:
public static <S> S createService(
Class<S> serviceClass, final String authToken) throws KeyManagementException, NoSuchAlgorithmException {
AuthenticationInterceptor interceptor = null;
if (!TextUtils.isEmpty(authToken)) {
interceptor = new AuthenticationInterceptor(authToken);
if (!httpClient.interceptors().contains(interceptor)) {
httpClient.addInterceptor(interceptor);
builder.client(httpClient.build());
retrofit = builder.addConverterFactory(ScalarsConverterFactory.create()).build();
}
}
return createServiceHttps(serviceClass, interceptor, null);
}
最后是我的请求正文:
Call<ResponseBody> calls = loginService.getSpecificTraining(Integer.parseInt(cat), slug);
Log.e(">> Url: ", calls.request().url() + " ");
int finalImage = image;
calls.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
Log.e(">> onResponse:", String.valueOf(response.code()));
if (response.isSuccessful()) {
assert response.body() != null;
Log.e(">> Response message: ", response.message() + " ");
try {
String data = response.body().string();
} catch (IOException e) {
e.printStackTrace();
}
}
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
}
});
程序似乎无法解码响应。有什么解决方案?