2016-06-21 71 views
21
@DELETE("/job/deletejob") 
Observable<JobDeleteResponseModel> jobDelete(@Body JobDeleteRequestModel model); 

sono sempre questo errore:@DELETE metodo non sta sostenendo (metodo HTTP non-corpo non può contenere @Body o @TypedOutput.)

Non-body HTTP method cannot contain @Body or @TypedOutput

uno può aiutarmi ad uscire da questo? ?

+0

Prova Query invece di corpo come corpi sulle richieste DELETE non hanno semantica definita. Notare che l'invio di un corpo su una richiesta DELETE potrebbe causare alcune implementazioni esistenti di per rifiutare la richiesta. – PN10

+0

Controlla questo link potrebbe aiutarti https://github.com/square/retrofit/issues/458 – PN10

risposta

64

Ho usato questa soluzione ufficiale di recente:

@HTTP(method = "DELETE", path = "/job/deletejob", hasBody = true) 
Observable<JobDeleteResponseModel> jobDelete(@Body JobDeleteRequestModel model); 
+2

Grazie, ha funzionato: D – A7madev

+0

Grazie ha funzionato. – pravin

+0

Non funziona. Ho usato nel seguente link: https://stackoverflow.com/questions/48539478/custom-http-method-not-working-in-retrofit-2# Potete aiutarmi per favore. –

0

provare questo è un lavoro

@HTTP(method = "DELETE", path = "api/v3/delete", hasBody = true) 
Call<ResponseBody> RESPONSE_BODY_CALL(@Header("Authorization") String authorization, @Body HashMap<String, List> stringListHashMap); 

o controllare https://github.com/square/retrofit/issues/974