添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

此处post提交时header中的contentType类型异常,

application/x-www-form-urlencoded 最常见的 POST 提交数据的方式
multipart/form-data 使用表单上传文件时,传递这个值 application/json 用来告诉服务端消息主体是序列化后的
JSON 字符串 text/xml 使用 HTTP 作为传输协议,XML 作为编码方式的远程调用规范 [四种常见的 POST
提交数据方式对应的content-type取值]

[菜鸟驿站HTTP content-type
对照表]

解决办法
先查看network里面的请求头和响应头的content-type一样不
在这里插入图片描述
如果不一样,修改成一样

axios({
     method: 'post',
     url: '/js/answer/save',
     data: JSON.stringify(obj),
     headers: {
       'Content-Type': 'application/json;charset=UTF-8'
   }).then(res=>{
       console.log(res);
   }).catch(err=>{
       console.log(err);
                                    一、项目情形
现在vue项目中,一般使用axios发送请求去后台拉取数据。
在某些业务场景中,前端需要在某个字段中发送一个复杂的嵌套对象给后台做保存并处理。虽然axios可配置发送方式(post/get等),但如果不做其他配置,post的数据其实也是拼在请求地址后面,而这种传输方式会有很多问题:一是可能数据丢失,二是get传送的数据长度有limit,如果需要保存大段的中文,会报错;三是数据不直观,复杂对象的格式会出现问题。
二、解决方案
怎么实现使用post方法时,能实现formData方式提交,而且整个请求数据格式能像queryString一样直观。
使用QS将数据序列化
//main.j
                                    一,问题今天一位朋友遇到一个前端json格式的字符串无法传递到后台的问题,当时他在前端使用JSON.stringify(对象),将对象转成JSON格式的字符串之后,后台使用@ResponseBody准备将这个JSON格式的字符串转化成对象,然后对后台的对象赋值。但是前端却提示415,说什么Unsupported Media Type。二,解决方案2.1 找出问题所在我将前端转化得到的json格式字...
                                    问题描述:ajax往后台传json格式数据报415错误,如下图所示页面代码function saveUser(){var uuId = document.getElementById("uuid").value;var idCard = document.getElementById("idCard").value;alert(uuId+idCard);// var result = new Ob...
                                    在前端发送http或https的post请求时,返回415状态码
后台使用了springmvc框架,参数使用了@RequestBody注解进行绑定,用了这个注解进行数据绑定,只能接受数据类型为 Content-Type类型为application/json
其他类型就会报415,服务器无处处理当前内容类型的数据
关于@RequestBody注解,主要用来接收前端传递给后端的json字符串中的数据的(请求体中的数据的),后台使用@RequestBody注解,前端是需要使用的Content-Type类
                                    这篇文章主要介绍了http/https post 415错误的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
                                    进行有文件的表单提交时出现415错误,以前没遇到过记录一下415错误的解释是说,服务器无法处理请求附带的媒体格式。前端post请求时,在请求头里的 Content-Type 设置为:multipart/form-data 类型而后端Controller接口中,请求方法中我添加了注解,如下图所示关于@RequestBody注解,主要用来接收前端传递给后端的json字符串中的数据的(请求体中的数据的),后台使用注解,前端是需要使用的Content-Type类型为。
                                    (1)实现 Vue 前端组装一个 Form-Data 类型入参并解决 415 状态码问题;
(2)解决如何根据文件路径转换成 File 文件对象,再拼接进 Form-Data 入参;
(3)使用 ElementUI el-upload 组件,实现手动上传文件,并拼接进 Form-Data 入参。
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible
                                    通常前端通过POST请求向服务器端提交数据格式有4中,分别是”application/x-www-form-urlencoded”格式、” multipart/form-data”格式、”application/json”格式和”text/xml”格式。通常最常见的是”application/json”格式,也就是通过JSON字符串形式。
在控制台看到的数据就是这样:
有的时候后台需要Form形式的数据才能正常解析,所以前端需要在传过去时修改一下格式。开始我以为是修改Content-Tyoe属性,于是就
axios.defaults.headers = {
 'Content-type'