Bom dia, Estou com dificuldade de fazer funcionar uma requisição POST onde preciso enviar dois parâmetros solicitados pela API - token e shopping_list_id
Método: POST URL: /shopping-lists/info Obrigatório: bearer token
Requisição: { "shopping_list_id" : "1" }
Está é a minha requisição :
@POST("shopping-lists/info") Call infoLista(@Body JsonObject jsonToken, @Body JsonObject jsonId);
Erro:
2021-07-27 08:39:27.680 11330-11388/com.example.appmarket E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1
Process: com.example.appmarket, PID: 11330
java.lang.RuntimeException: An error occurred while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:354)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:383)
at java.util.concurrent.FutureTask.setException(FutureTask.java:252)
at java.util.concurrent.FutureTask.run(FutureTask.java:271)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:245)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.IllegalArgumentException: Multiple @Body method annotations found. (parameter #2)
for method DateService.infoLista
at retrofit2.Utils.methodError(Utils.java:54)
at retrofit2.Utils.methodError(Utils.java:43)
at retrofit2.Utils.parameterError(Utils.java:64)
at retrofit2.RequestFactory$Builder.parseParameterAnnotation(RequestFactory.java:773)
at retrofit2.RequestFactory$Builder.parseParameter(RequestFactory.java:325)
at retrofit2.RequestFactory$Builder.build(RequestFactory.java:206)
at retrofit2.RequestFactory.parseAnnotations(RequestFactory.java:67)
at retrofit2.ServiceMethod.parseAnnotations(ServiceMethod.java:26)
at retrofit2.Retrofit.loadServiceMethod(Retrofit.java:202)
at retrofit2.Retrofit$1.invoke(Retrofit.java:160)
at java.lang.reflect.Proxy.invoke(Proxy.java:1006)
at $Proxy0.infoLista(Unknown Source)
at com.example.appmarket.asynctask.InfoListasRetrofit.doInBackground(InfoListasRetrofit.java:36)
at android.os.AsyncTask$2.call(AsyncTask.java:333)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
... 4 more
Pelo que entendi, se refere a ter dois Body... ok
Então mandei um pelo @Header e outro @Body... não deu certo
Mandei os dois como @Path - não deu certo...
Poderia me dar uma ajuda.....
Obrigada