@Documented
@Target(value=PARAMETER)
@Retention(value=RUNTIME)
public @interface Part
The parameter type on which this annotation exists will be processed in one of three ways:
MultipartBody.Part
the contents will be used directly. Omit
the name from the annotation (i.e., @Part MultipartBody.Part part
).
RequestBody
the value will be used directly with
its content type. Supply the part name in the annotation (e.g., @Part("foo")
RequestBody foo
).
@Part("foo")
Image photo
).
Values may be null
which will omit them from the request body.
@Multipart
@POST("/")
Call<ResponseBody> example(
@Part("description") String description,
@Part(value = "image", encoding = "8-bit") RequestBody image);
Part parameters may not be null
.