沿着某些表单数据将图像发布到WCF Rest

时间:2018-04-25 12:46:20

标签: android image wcf retrofit

这是我的方法,用于发送一些表单数据,但我也想发送一个图像,这可能使用相同的方法,并使用类中的图像属性添加它或更合理的发送它使用另一种方法是分开。

@POST("PostBanderolDataJSON")
        Call<ReportPostData> PostData(@Body ReportPostData reportdata);

这是我的班级:

public class ReportPostData {

    private int Id;

    private String Banderolnr;

    private String Pharmacy;

    private String Place;

    private String LocationLongitude;

    private String LocationLatitude;
}

1 个答案:

答案 0 :(得分:0)

使用多部分

例如

@Multipart
        @POST("/v1/upload/sell-image")
        Call<CustomerUploadImageResponse> signUp(
                @Header(KEY_X_AUTH) String authToken,
                @Part List<MultipartBody.Part> signUpDataList
        );

生成signUpDataList使用类似

List<MultipartBody.Part> signUpDataList = new ArrayList<>();
        signUpDataList.add(MultipartBody.Part.createFormData("qid", "1333"));
        signUpDataList.add(MultipartBody.Part.createFormData("ut", "xyz");
        String path = customerImageUploadData.getImageUrl();
        Bitmap bitmap = ImageUtil.getBitmap(mActivity, path);
        if (null != bitmap) {
            MultipartBody.Part part = MultipartBody.Part.createFormData(
                    "img",
                    "profile.jpg",
                    RequestBody.create(null, ImageUtil.getBytesFromBitmapFullQuality(bitmap))
            );
            signUpDataList.add(part);
        }