Modificación 2 con solo datos de formulario
Estoy tratando de hacer una solicitud POST usando el Retrofit 2. El tipo de solicitud esform-data
NO application/x-www-form-urlencoded
.
Solo publico datos, no los archivos en la solicitud, y la respuesta es en forma de JSON.
Yo he tratado@FormUrlEncoded, @Multipart
Pero no está funcionando.
He intentado seguir la solicitud
1. Primer intento
@FormUrlEncoded
@POST("XXXX")
Call<PlanResponse> getPlanName(@Field(Constants.ACTION_ID) String actionId, @Field(Constants.OFFER_CODE) String offerCode);
2. Segundo intento
@Headers({"Content-Type: multipart/form-data","Content-Type: text/plain"})
@FormUrlEncoded
@POST("XXXX")
Call<PlanResponse> getPlans(@Body @FieldMap(encoded = false) Map<String, String> data);
3. Tercer intento
@Headers("Content-Type: multipart/form-data")
@Multipart
@POST("XXXX")
Call<PlanResponse> myPlans(@Part(Constants.ACTION_ID) String actionId, @Part(Constants.OFFER_CODE) String offerCode);
Solo estoy obteniendo el cuerpo comonulo. Está trabajando con el POSTMAN.
También he buscado sobreform-data
yapplication/x-www-form-urlencoded
y descubrí que si los datos son binarios, useform-data
y si los datos son ASCII, useapplication/x-www-form-urlencoded
Estoy tratando de encontrar¿Los datos de formulario no son compatibles con la actualización?
Solicitud POSTMAN
Cache-Control: no-cache
Postman-Token: XXXXXXXXXXXX-XXXXXXXXXXXX-XXXXXXXXXXXX-XXXXXXXXXXXX-XXXXXXXXXXXX
Content-Type: multipart/form-data; boundary=---- WebKitFormBoundaryXXXXXXXXXXXX
----WebKitFormBoundaryXXXXXXXXXXXX
Content-Disposition: form-data; name="actionId"
1000
----WebKitFormBoundaryXXXXXXXXXXXX
Content-Disposition: form-data; name="offerCode"
MYCODE
----WebKitFormBoundaryXXXXXXXXXXXX
Solo puedo agregar código generado HTTP recortado de POSTMAN