gpt4 book ai didi

java - Spring boot POST PDF内容类型'application/pdf不支持

转载 作者:行者123 更新时间:2023-12-02 01:36:48 25 4
gpt4 key购买 nike

我正在尝试建立一个后端,用于发送两个 PDF 并使用它们。为此,我必须实现 REST 服务,但我无法接收它们。

后期映射

@PostMapping("/post")
CompareJob compareJob(@RequestBody File file1) {
System.out.print("Received File: " + file1);
CompareJob compareJob = new CompareJob();
return compareJob;
}

为了执行 POST 请求,我使用 Postman,其中设置了以下内容:

标题 -> 内容类型:application/pdf

正文 -> 二进制:testPDF.pdf

这是我得到的回复:

{
"timestamp": "2019-03-12T13:55:12.898+0000",
"status": 415,
"error": "Unsupported Media Type",
"message": "Content type 'application/pdf;charset=UTF-8' not supported",
"path": "/post"
}

我对 REST 服务非常陌生,非常感谢您提供一些错误提示。

感谢您的帮助!

根据amin10043建议进行编辑:

@PostMapping("/post")
CompareJob compareJob(@RequestParam("file1") MultipartFile file1) {
System.out.print("Received File: " + file1);
CompareJob compareJob = new CompareJob();
return compareJob;
}

读完后,我不应该检查 Postman 中的 Content-Type,我收到以下回复:

{
"timestamp": "2019-03-12T14:37:52.765+0000",
"status": 500,
"error": "Internal Server Error",
"message": "Current request is not a multipart request",
"path": "/post"
}

我的错误是我将 pdf 作为二进制文件上传,而不是在 postman 中作为表单数据上传。必须这样设置:https://snag.gy/H4w5S8.jpg

最佳答案

如果你想上传文件,最好使用Multipartfile ,另外请将您的输入参数从 @RequesBody 更改为 @RequestParam("yourparameter name"),这样 postman 就可以向请求添加正确的 header ,并且应该可以工作。

关于java - Spring boot POST PDF内容类型'application/pdf不支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55123256/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com