![](/img/trans.png)
[英]Spring Boot Content type 'text/plain' not supported in POST request in terminal
[英]Spring boot POST PDF Content type 'application/pdf not supported
我试图在后端发送两个PDF并与之一起工作。 为此,我必须实现REST服务,但无法接收它们。
PostMapping
@PostMapping("/post")
CompareJob compareJob(@RequestBody File file1) {
System.out.print("Received File: " + file1);
CompareJob compareJob = new CompareJob();
return compareJob;
}
要执行POST请求,我使用Postman进行以下设置:
标头->内容类型:应用程序/ 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;
}
阅读后,我不应该在邮递员中检查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作为二进制文件而不是邮递员中的表格数据上传。 必须这样设置: https : //snag.gy/H4w5S8.jpg
如果要上传文件,最好使用Multipartfile ,也请将输入参数从@RequesBody
为@RequestParam("your parameter name")
,这样邮递员就可以向请求中添加正确的标头并且应该可以使用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.