解决vue+axios post参数后端没法接收的问题

使用axios发送post请求,http请求hearder中'Content-Type'的类型为'application/json;charset=UTF-8',后端没法接收,若是后端使用的是springmvc框架,能够让其对应方法的参数加上注解@RequestBody,便可接收,可是此种方法不友好,这样改了以后,其余地方须要调用访问,若是不是用json方式传递参数,则没法使用。node

   下面,考虑从前段解决问题,首先安装nodejs的qs模块:npm install qs --saveios

而后修改post代码:spring

var qs = require('qs');
function post(url, params){
	return axios.post(url, 
		qs.stringify(params),
		{
			headers: {
				'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
			}
		}).then(res => res.data);
}
export const addSysTable = params => { return post(`/api/table/insert.do`, params).then(res => res.data);};

这样调用addSysTable 就能够正常传递参数了。npm

相关文章
相关标签/搜索