在Retrofit中一起使用@Field和@Body参数

时间:2015-12-20 08:38:20

标签: android retrofit

我正在使用Retrofit将一些数据发送到我的后端。我需要发送3个字符串和一个自定义的Place对象。这就是我在做的事情:

@POST("/post/addphoto/")
    public void addImage(@Field("image_url") String url, @Field("caption") String caption, @Field("google_place_id") String placeId, @Body Place place, Callback<UploadCallBack> response);

有了这个,我收到了这个错误:

@Field parameters can only be used with form encoding.

当我使用@FormUrlEncoded时,就像这样:

@FormUrlEncoded
@POST("/post/addphoto/")
        public void addImage(@Field("image_url") String url, @Field("caption") String caption, @Field("google_place_id") String placeId, @Body Place place, Callback<UploadCallBack> response);

我收到此错误:

@FormUrlEncoded or @Multipart can not be used with @Body parameter.

如何让它发挥作用?

0 个答案:

没有答案