Используя Retrofit 2.0.1, в моем API-интерфейсе, определенном в приложении Android, есть функция вызова:
@Multipart
@POST("api.php")
Call<ResponseBody> doAPI(
@Part("lang") String lang,
@Part("file\"; filename=\"image.jpg") RequestBody file
);
Я отправляю запрос следующим образом:
Call call = service.doAPI( "eng", imageFile);
где imageFile
- это RequestBody
, созданный с помощью объекта File
. У части загружаемого изображения нет проблем, а часть @Part("lang") String lang
получила дополнительные кавычки на сервере.
На стороне PHP написано следующее:
$lang = trim($_POST['lang']);
который возвращает "eng"
. Почему добавлена двойная кавычка, окруженная строкой?
конечно, я могу разделить конечные и ведущие двойные кавычки, но это странно сделать это
Связанный выпуск: https://github.com/square/retrofit/issues/1210