Как загрузить фото в Android дооснащение 2? - PullRequest
0 голосов
/ 10 февраля 2019

Я не могу загрузить фотографию на сервер. java.lang.IllegalArgumentException: параметры @Field можно использовать только с кодировкой формы.(параметр # 1) .Пожалуйста, помогите мне, как решить или любые другие предложения. почтальон

@FormUrlEncoded
@Multipart
@POST("qq/api/xxxx")
Call<Custom> postCustom(@Field("Id") String Id,
   @Part MultipartBody.Part file,
   @Field("Status") String Status);

1 Ответ

0 голосов
/ 10 февраля 2019

Измените свой интерфейс запроса следующим образом

@Multipart
@POST("qq/api/xxxx")
Call<Custom> postCustom(
   @Part("Id") String Id,
   @Part MultipartBody.Part file,
   @Part("Status") String Status);

Вы не можете использовать оба @FormUrlEncoded и @Multipart для одного метода, поскольку HTTP-запрос может иметь только один Content-Type,@FormUrlEncoded и @Multipart являются типами контента.

От Джейк Уортон

Вы можете использовать FormUrlEncodedTypedOutput в качестве аргумента @Partдля формы закодировать часть и построить его самостоятельно.Аннотация к методу предназначена для внешней кодировки, которая в данном случае является многочастной.

Ссылки

Я также добавил ссылку на этот выпуск, которая действительно полезначтобы вы поняли, что вы собираетесь изменить в своем http-методе запроса

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...