axios post请求后台接收不到参数 和 一些配置问题
原因:
axios 的 headers的 content-type 默认是 “application/json ”,传给后台的格式是这样的:
但是后台接收数据的格式一般是表单格式的,就是formdata的数据格式:
所以这时就出现了一种情况,就是前端提交的数据请求接口没有报错,但是后台就是接收不到没有数据返回。
解决方法:
1,和后台商量换数据格式,99.99%是被否决的
2,传数据之前先把参数转成formdata数据
let data = new FormData()
data.append('id',id)
data.append('name',name) //把一个一个字段名和值appen进去,有点麻烦
3,改变axios 的 headers的 content-type 的值
1.application/x-www-form-urlencoded (这个是变成JSON字符串格式)
2.multipart/form-data (这个是formdata格式)
3,application/json (默认的格式)
4,text/xml (这种一般很少用到)
//改变方法,第一种
let ajax=axios.create({ //在新建axios时设置
baseURL:baseUrl,
headers:{
'Content-type': 'multipart/form-data'
},
})
//第二种
import axios from 'axios'; //在import之后设置
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
参考链接:axios用post提交的数据格式
wepack 中axios设置代理
//webpakc 配置
proxy: { // agent cross-domain interface
"/api": { //代理标识
target: 'http://aaa.com', //要代理的地址
changeOrigin: true,
pathRewrite: {
"^/api": "" //实际请求时重写标识,例如实际的请求地址是http://aaa.com/test/user,设置了标识后代理的请求地址是loclahost:8888/api/test/user
}
}
} let ajax=axios.create({
baseURL:/test, //一般这个地方写的是域名和接口名中间的那部分
}) //请求时
ajax.post('/user') //请求时会自动拼上域名和baseURL http://aaa.com/test/user
参考链接:https://segmentfault.com/q/1010000012607105
axios post请求后台接收不到参数 和 一些配置问题的更多相关文章
- 微信小程序:使用wx.request()请求后台接收不到参数
问题描述: 微信小程序:wx.request()请求后台接收不到参数,我通过wx.request()使用POST方式调用请求,参数传递不到后台 解决方案: Content-Type': 'applic ...
- vue --- axios发post请求后台接收不到参数的三种解决方案
最近用vue 做项目使用axios 发送post 请求时遇到了前端传数据后端接收不到的情况: 后来仔细对比发现axios传值是这样的: 而 ajax 传值是这样的: 一个 Request Paylo ...
- Vue简单封装axios—解决post请求后端接收不到参数问题
1.在src/下新建api文件夹,api/下新建index.js和public.js 在public.js中: import axios from 'axios'; import qs from 'q ...
- Vue 使用 axios post请求后台数据时 404
今天遇到Vue 使用 axios post请求后台数据时 404 使用postman 就能获取到 网上找了大半天 终于找到了解决方法,传送门:https://www.jianshu.com/p/b10 ...
- Angular13 Angular2发送PUT请求在后台接收不到参数
1 问题描述 利用angular2发送PUT请求时,后端接收不到参数 2 问题诊断 前段参数格式问题,后端获取参数的方法不对 3 解决问题 angular前段:将所有参数编程JSON字符串形式 spr ...
- Angular 一些问题(跨域,后台接收不到参数)
1,跨域:跟前端没多大关系的,后台没设置头而已.这时候如果你们后端太菜你可以叫他加上每种语言 都不同,但是里面的呢荣是一样的.具体跨域可以跳转这里http://www.cnblogs.com/dojo ...
- js ajax post 提交的时候后台接收不到参数,但是代码没有错,怎么回事
这个错误有两点,你自己写的php页面里面的参数接收出错了 还有就是你没有写一句重要的代码告诉浏览器 你使用post提交方式去提交 xhr.setRequestHeader("Content- ...
- axio post 请求后端接收不到参数的解决办法
原因是没有对参数进行序列化 默认情况下,axios将JavaScript对象序列化为JSON. 要以应用程序/ x-www-form-urlencoded格式发送数据. 在拦截器前修改 方法一,用原生 ...
- 解决angular的post请求后SpringMVC后台接收不到参数值问题的方法
这是我后台SpringMVC控制器接收isform参数的方法,只是简单的打出它的值: @RequestMapping(method = RequestMethod.POST) @ResponseBod ...
随机推荐
- 0925CSP-S模拟测试赛后总结
献上了自己的第二次爆零. 最近考试持续低迷.受同桌影响是一方面,自己的状态不行也是一方面,根本还是实力不行. 昨天T1是签到题.然而并没有发现这个事实.并不会打…… 无意围观同桌秒切T1,秒过样例,长 ...
- python封装email模块
一.代码 from email.mime.text import MIMEText from email.header import Header from email.utils import pa ...
- 实现客户端连接Mysql数据库服务器
以前学习mysql的时候,都是部署在本机,这样不存在客户端主机与服务器主机连接的问题,都是直接用localhost登录就行. 今天因项目需要,我们把mysql部署在服务器上,然后客户端装了client ...
- selenium python bindings 写测试用例
这章总结selenium在UI测试方面的用法 import unittest from selenium import webdriver from selenium.webdriver.common ...
- LANMP相关配置
Linux Apache Mysql Postgresql 安装 yum -y install httpd yum -y install mysql mysql-server yum -y insta ...
- node-webkit笔记
两个月前给一个运营站点做了个封皮,今天再做竟然忘了怎么搞了...为之文以志. 流程参考: http://www.cnblogs.com/2050/p/3543011.html 相关命令: copy / ...
- 第二周课堂笔记3th and4th
---恢复内容开始--- 1. list列表 可变数据类型 创建列表的方法: A=[“a”,”sda”,”2131”] 直接创建 常用的方法 B=list(“ads”) ...
- java_JDK8中新增的时间API
java.time 包含值对象的基础包 java.time.chrono 提供对不同的日历系统的访问 java.time.format 格式化和解析时间的日期 java.time.temporal 包 ...
- iOS开发系列-NSURLConnection
概述 NSURLConnection是负责发送请求,建立客户端与服务端的连接.发送数据给服务器,并收集来自服务器的响应数据.其中NSURLRequest类是用来封装一个请求,包含NSURL对象.请求方 ...
- BP 算法之一种直观的解释
0. 前言 之前上模式识别课程的时候,老师也讲过 MLP 的 BP 算法, 但是 ppt 过得太快,只有一个大概印象.后来课下自己也尝试看了一下 stanford deep learning 的 wi ...