Ich versuche, eine Datei mit Retrofit 2.0 hochladen. Abgesehen von der Datei, habe ich einige andere Parameter, die mit Formulardaten gesendet werden, die auch einen booleschen Typ enthalten. Meine Anfrage Deklaration ist -Retrofit 2.0 Multipart Anfrage, senden booleschen Typ in Formulardaten einschließlich Datei
@Multipart
@POST("/upload/abc")
Call<UploadResponse> uploadToServer(@Part("img_file\";filename=\"image") RequestBody file,
@Part("access_token") RequestBody sessionKey,
@Part("is_final") Boolean isFinal,
@Part("sequence_id") Integer sequenceId,
@Part("entity_id") RequestBody entityId,
@Part("image_type") RequestBody imageType);
Ich benutze GsonConverterFactory. Ich habe versucht, zwei Ansätze -
(1) Statt @Part("is_final") Boolean isFinal
ich @Part("is_final") RequestBody isFinal
verwendet und sendet es mit RequestBody.create(MediaType.parse("text/plain"), String.valueOf(true))
(2) Mit @Part("is_final") Boolean isFinal
und Senden mit Boolean.TRUE.
In beiden Fällen ist "is_final", das auf der Serverseite empfangen wird, Unicode oder als String anstelle des booleschen Wertes.
Was ist der beste Weg, um dieses