邮递员生成的客户代码与邮递员的测试响应不匹配

时间:2020-08-04 17:46:54

标签: java spring-boot rest postman generated-code

我一直在尝试使用Java和Springboot发送文件(图像)。最近,我发现邮递员中有一个代码部分可以生成Java代码,并认为它可以用于发送文件(通过post方法),但是我收到了不成功的消息,不是成功的,而是在具有相同参数的邮递员。
这是对邮递员的回应:

{
    "status": "success",
    "message": "Media uploaded successfully.",
    "data": {
        "mediaId": "429f614c-e6d4-41a2-87fe-1209d7f25c6b"
    }
}

接下来是相应的代码(有两个代码,一个使用Java-OkHttp,另一个使用Java-Unirest,由于某种原因,两个代码都不起作用。下面是使用Unirest的代码):

Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.post("https://waapi.pepipost.com/api/v2/media/upload/")
  .header("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJuZXRjb3Jlc2FsZXNleHAiLCJleHAiOjI0MjUxMDI1MjZ9.ljC4Tvgz031i6DsKr2ILgCJsc9C_hxdo2Kw8iZp9tsVcCaKbIOXaFoXmpU7Yo7ob4P6fBtNtdNBQv_NSMq_Q8w")
  .header("Content-Type", "image/jpeg")
  .field("file", new File("/C:/Users/Slomil/Desktop/WABot/menu.jpg"))
  .asString();

运行时,我遇到消息

{"status":"failure","error":{"code":"8006","message":"Parameter file is required. Please upload a valid file."}}
我以为我不应该得到

。我想是因为有一个文件作为字段?我不确定有效性是什么。.因为我可以打开文件,所以它是大小为82.3 kb的常规jpg图像。.到目前为止,我们只知道响应消息与邮递员相反:)
有谁知道那是为什么?生成的代码是否可靠使用(而不是使用例如CloseableHttpClient等)?
非常感谢。.

1 个答案:

答案 0 :(得分:0)

我解决了这个问题,如果有人遇到此问题..无需指定Content-Type,所以当我省略它时,它就可以了。:)这篇文章对我The request was rejected because no multipart boundary was found in springboot和第一个答案都有帮助..