axios 调用raw类型的参数接口

axios 调用raw类型的参数接口

  • content-Type要设置成application/json
axios.defaults.headers['content-Type'] = 'application/json'
  • 参数直接object对象传进去,不需要qs.stringfy()
export const getOutInfo = data => {
	axios.defaults.headers['content-Type'] = 'application/json'
	return axios.post('/url', data)
}
// axios.defaults.headers['content-Type'] = 'application/json'
// 上述设置方法在默认类型为application/x-www-form-urlencoded时,调用该方法后会影响下一个接口,下一个接口若需要application/x-www-form-urlencoded类型,但是实际类型还会是application/json,采用拦截器设置更好
axios.interceptors.request.use(
	config => {
		config.headers.ts = new Date().getTime()
		if (config.meta?.type) {
			config.headers['Content-Type'] = config.meta.type
		} else {
			config.data = qs.stringify(config.data)
		}
		return config
	},
	error => Promise.reject(error)
)
// 调用示例
export const postJson = data => {
	return axios({
		method: 'post',
		url: '/url', 
		data,
		meta: { type: 'application/json' }
	})
}
posted @ 2022-09-29 20:05  jiazq  阅读(591)  评论(0)    收藏  举报