ho chiamato PATCH servizio Web utilizzando Retrofit2 ma onResponse non si chiama e il onFailure si chiama Nonostante il funzionamento del il servizio è riuscito sul lato server perfettamenteRetofit2 errore java.io.EOFException: Fine di ingresso alla linea 1 colonna 1
e ogni volta, ho cercato di utilizzare Fiddler per controllare il servizio il suo lavoro, ho trovato il problema è che la serializzazione la venuta di risposta del servizio e quando si utilizza Fiddler ho scoperto che non contenuto della risposta JSON, quindi il servizio di retrofit assume d che il suo fallito perché non ci sono contenuti e non può serializzare il contenuto EMPTY e darmi questo errore
java.io.EOFException: End of input at line 1 column 1
Fiddler risposta prime
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 Risposta è vuota
webservice in 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
}
}
ho provato a sostituire oggetto con String, JsonObject, emptyCalssBody .... ma la sua non è riuscito
l'interfaccia del webservice
@PATCH("alerts/{alert_id}/accept")
Call<Object> accept_invited_alerts(@Header("X-Api-Token") String
api_token, @Path("alert_id") int alert_id);
solo restituire void invece, se il corpo è vuoto – Bhargav
ho sostituito il tipo di oggetto con il tipo Void in codice Java e non cambiato in cambio webservice, grazie per il tuo suggerimento in modo che tu possa pubblicare la risposta per accettarla e contrassegnarla :) @Bhargav –