Я вызвал веб-службу PATCH с помощью Retrofit2, но onResponse не вызывается, а вызывается onFailure, несмотря на операцию служба выполняется на стороне сервера идеально
И всякий раз, когда я пытался использовать fiddler для проверки работы службы, я обнаружил, что проблема заключается в том, что сериализация поступающего ответа службы и при использовании fiddler я обнаружил, что нет содержимого ответа JSON, поэтому служба модернизации предположила, что она не удалась, потому что контента нет, и он не может сериализовать ПУСТОЙ контент и выдать мне эту ошибку
java.io.EOFException: End of input at line 1 column 1
Необработанный ответ Fiddler
HTTP/1.1 200 OK
Server: nginx/1.9.4
Date: Wed, 02 Mar 2016 09:55:55 GMT
Content-Type: application/json
Content-Length: 0
Connection: close
Status: 200 OK
X-Content-Type-Options: nosniff
Ответ Fiddler Json пуст
веб-служба в Java
Call<Object> call = TimeCapp.services.accept_invited_alerts(HomeActivity.api_token, alert_id);
call.enqueue(new Callback<Object>()
{
@Override
public void onResponse (Call<Object> call, Response<Object> response)
{
if (response.isSuccess()) {
String x = response.body();
}
}
@Override
public void onFailure (Call<Object>call, Throwable t)
{
String x = t.getMessage();//java.io.EOFException: End of input at line 1 column 1
}
}
Я попытался заменить object на String,JsonObject,emptyCalssBody.... но это не удалось
интерфейс веб-службы
@PATCH("alerts/{alert_id}/accept")
Call<Object> accept_invited_alerts(@Header("X-Api-Token") String
api_token, @Path("alert_id") int alert_id);