当axios传递数据时,如果数据中包含等于号,则axios会将数据解释为查询参数。为了避免这种情况,可以将数据转为JSON对象,然后传递给axios。示例代码如下:
原始数据:
const data = { name: 'John', age: 25, status: 'married', profession: 'developer', comment: 'equal sign = should not break axios' }
const axiosConfig = { method: 'post', url: 'https://example.com/api/', data: data }
Axios请求:
axios(axiosConfig) .then(response => console.log(response)) .catch(error => console.log(error))
修改后的数据:
const data = { name: 'John', age: 25, status: 'married', profession: 'developer', comment: 'equal sign = should not break axios' }
const jsonData = JSON.stringify(data)
const axiosConfig = { method: 'post', url: 'https://example.com/api/', data: jsonData, headers: { 'Content-Type': 'application/json' } // 告诉axios请求数据的类型为JSON数据 }
Axios请求:
axios(axiosConfig) .then(response => console.log(response)) .catch(error => console.log(error))