Java实现方法接口入参同时包含文件、字段和对象等多种类型。HTTP请求返回415状态,Content type ‘application/octet-stream‘ not supported错误。

这篇具有很好参考价值的文章主要介绍了Java实现方法接口入参同时包含文件、字段和对象等多种类型。HTTP请求返回415状态,Content type ‘application/octet-stream‘ not supported错误。。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

方法一:对象不使用注解

	@PostMapping(value = "/subject/syncDocuments")
    @ResponseBody
    @ApiImplicitParam(paramType = "body", dataType = "Subject", name = "subject", value = "稿件")
    public Map<String, Object> syncDocuments(@RequestParam(value = "file", required = true) MultipartFile file,
                                             @RequestParam(value = "type" )Integer type,
                                             Subject subject) //稿件对象

使用Postman测试,直接将subject对象的字段填在key的位置
java 接口415,java,postman,java,postman

方法二:对象使用注解@RequestPart

	@PostMapping(value = "/subject/syncDocuments")
    @ResponseBody
    @ApiImplicitParam(paramType = "body", dataType = "Subject", name = "subject", value = "稿件")
    public Map<String, Object> syncDocuments(@RequestParam(value = "file", required = true) MultipartFile file,
                                             @RequestParam(value = "type" )Integer type,
                                             @RequestPart Subject subject) //稿件对象

使用Postman测试,将字段包装在subject对象里,使用Content type:application/json的内容类型
java 接口415,java,postman,java,postman
注:方法二在开发本地测试执行成功,但是在测试人员机子下不通过,执行报错如下:
Content type ‘application/octet-stream’ not supported

{
    "timestamp": 1681976364292,
    "status": 415,
    "error": "Unsupported Media Type",
    "message": "Content type 'application/octet-stream' not supported",
    "path": "/subject/syncDocuments"
}

原因:未将原始json格式的数据转换为http能够识别的字符串流。
解决方案:测试时,可以把对象放到json文件里,将.json文件上传。(如果是前端,则需要转成json格式)
java 接口415,java,postman,java,postman
使用Postman测试通过
java 接口415,java,postman,java,postman文章来源地址https://www.toymoban.com/news/detail-664659.html

到了这里,关于Java实现方法接口入参同时包含文件、字段和对象等多种类型。HTTP请求返回415状态,Content type ‘application/octet-stream‘ not supported错误。的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java怎么实现几十万条同时数据插入(三种基本方法测试)

    目录 1,使用批量插入  2,使用多线程 3,使用存储过程 在Java中实现插入几十万条数据,有多种方法可以使用。以下是其中的几种: 使用批量插入可以有效地提高插入速度。下面是一个示例代码: 使用多线程可以将数据分为多个部分并行插入,提高效率。以下是一个示例代

    2024年02月14日
    浏览(39)
  • <MyBatis>查询sq,根据某个字段,入参传list循环判断

    实现类: Mapper类: Mybatis层: 重点关注: 根据:北京,西安,上海,过滤数据:

    2024年02月11日
    浏览(68)
  • axios 实现 POST/PUT接口入参是 query的形式而非JSON的形式——querystring的使用

    先看下什么是 query 的形式入参: 一般是 GET 请求才会是 query string parameters 的形式入参 参数是 query string parameters 的展示,最终效果是拼接到 url 地址中,如下图所示: 一般是 POST/PUT 请求才会是 request payload 的形式入参 参数是 request payload 的展示,请求头 request headers 中的 co

    2024年02月01日
    浏览(39)
  • 使用MongoTemplate实现包含特定值的数组字段查询

    摘要:本文将介绍如何使用Spring Data MongoDB中的MongoTemplate来实现包含特定值的数组字段查询。通过示例代码和步骤,你可以轻松地在MongoDB中进行这类查询操作。 在使用Spring Data MongoDB进行数据查询时,你可以使用MongoTemplate来执行包含特定值的数组字段查询操作。下面是一个示

    2024年02月13日
    浏览(31)
  • java使用jsqlparser实现入参,并生成可执行sql

    话不多说,直接上 验证通过的代码 执行结果如下: 通过多个单条sql,生成关联sql,也就是 join on 执行结果:

    2024年02月14日
    浏览(36)
  • axios同一个接口,同时接收 文件 或者 数据

    1、前端代码  主要是: if (response.data instanceof Blob)  判断是否是 Blob 对象, 否则使用: response.data = JSON.parse(await (response.data).text()) 将后台返回的内容转成 文本 返回 主要是: responseType: \\\'blob\\\' 2、后端代码 需要注意的是: response.setHeader(\\\"Access-Control-Expose-Headers\\\", \\\"filename\\\"); 否则

    2024年02月12日
    浏览(58)
  • vue同时请求多个接口,接口请求完成后在处理下一个方法(Promise.all用法)

    Promise .all()方法用于将多个 Promise 实例,包装成一个新的 Promise 实例。 在处理多个异步处理时非常有用,比如说一个页面上需要等两个或多个ajax的数据回来以后才正常显示。 需要特别注意的是,Promise.all获得的成功结果的数组里面的数据顺序和Promise.all接收到的数组顺序是一

    2024年02月13日
    浏览(50)
  • 【微信小程序】Java实现微信支付(小程序支付JSAPI-V3)java-sdk工具包(包含支付出现的多次回调的问题解析,接口幂等性)

          对于一个没有写过支付的小白,打开微信支付官方文档时彻底懵逼 ,因为 微信支付文档太过详细, 导致我无从下手,所以写此文章,帮助第一次写支付的小伙伴梳理一下。 一、流程分为三个接口:(这是前言,先看一遍,保持印象,方便理解代码) 1、第一个接口:

    2024年01月16日
    浏览(77)
  • Java接口中的字段

    在Java接口中,可以定义字段(field)。接口中的字段隐含着是public、static、和final的。在字段的前面可以加public、static、和final这样的一个或多个修饰符,但加也是多余的,因为加不加的效果相同。 代码示例: 运行输出:

    2024年02月16日
    浏览(35)
  • Spring Validation 接口入参校验

    JSR 是 Java Specification Requests 的缩写,含义为 JAVA 规范提案。 JSR 303 - Bean Validation 规范, 正是一套基于 JavaBean 参数校验的标准。 Hibernate Validator 是 JSR 303 的实现,它提供了 JSR 303 规范中所有约束(constraint)的实现,同时也对其作出一些拓展。 Spring Validation 是对 Hibernate validati

    2024年02月07日
    浏览(85)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包