使用axios的坑
jQuery.ajax
的post
提交默认的请求头的Content-Type: application/x-www-form-urlencoded
axios.post
提交的请求头是Content-Type: application/json
。 application/json
是一个趋势,但是如果改一个旧项目,把jQuery.ajax
全部换成axios.post
时,需要对请求做一些配置。
改之前的代码:
// 没有指定请求头的content-typevar data = { age: 18}; $.ajax({ url: '', type: 'POST', data: data dataType: 'json', success: function(result) { // do something } })
使用axios
的代码
import axios from 'axios';import qs from 'qs'; var data = {age: 18}; var url = ''; axios.post( url, qs.stringify(data), {headers: { 'Content-Type': 'application/x-www-form-urlencoded'}} ).then(result => { // do something })