【问题标题】:Getting error while uploading image using Retrofit2.0使用 Retrofit2.0 上传图片时出错
【发布时间】:2016-05-17 00:48:34
【问题描述】:

我正在将图像文件上传到服务器,这会引发错误并显示成功响应(200)。

我收到的错误消息是: 文件类型无效!只允许以下文件类型:bmp、csv、doc、docx、eps、flv、gif、jpeg、jpg、mkv、mov、mp3、mp4、mpeg、mpg、ogg、pdf、png、psd、rar、swf、txt , wav, wma, wmv, xls, xlsx, zip

这是我的代码 sn-p:

Uri imageUri = Uri.fromFile(new File(fileName));

Map<String, RequestBody> map = new HashMap<>();
if (imageUri != null) {
    File file = new File(imageUri.getPath());
    RequestBody fileBody = RequestBody.create(MediaType.parse("multipart/form-data"), file);
    map.put("file\"; filename=\"" + file.getName(), fileBody);
}

Call<UploadResponse> call = FotomateClient.getFotomateAPI().upload(authorization, map);
call.enqueue(new Callback<UploadResponse>() {
    @Override
    public void onResponse(Response<UploadResponse> response) {
        if (response != null)
            if (response.body() != null)
                if (response.body().getCode() != null)
                    System.out.println(response.body().getCode());
        pd.dismiss();
        if (response.body().isSuccess()) {
            postCart("Bearer " + fm.getAccessToken(), response.body().getCode(), qty);
            dbHelper.deleteImage(id);

        }
    }

    @Override
    public void onFailure(Throwable t) {
        t.printStackTrace();
    }
});
}

我在这一点上感到震惊。谁能帮我吗。 提前致谢。

【问题讨论】:

  • 您上传的图片文件格式是什么?检查它是否在允许的文件类型中。
  • jpg 和 png @RohitSharma

标签: android retrofit image-uploading retrofit2


【解决方案1】:

代替

RequestBody fileBody = RequestBody.create(MediaType.parse("multipart/form-data"), file);
map.put("file\"; filename=\"" + file.getName(), fileBody);

试试这个代码

RequestBody fileBody = RequestBody.create(MediaType.parse("image/png"), file);
map.put("files\"; filename=\"image.png\"", fileBody);

界面应该是这样的:

@Multipart
@POST("mysite/upload")
Call<JsonElement> upload(@PartMap Map<String, RequestBody> params);

注意:此代码在改造 2.0.0-beta3 上有效并经过测试

【讨论】:

  • 感谢您的回答,但这也不起作用@penguin
猜你喜欢
  • 2018-07-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-24
  • 2023-02-01
相关资源
最近更新 更多