微信小程序图标_使用axios请求接口,几种content

阅读  ·  发布日期 2021-01-06 17:43  ·  admin
使用axios请求接口,几种content-type的区别详解       今天小编就为大家分享一篇使用axios请求接口,几种content-type的区别详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

这里, 我就拿以POST的方式传递相关配置来说事, 因为笔者在这里躺了两次坑, 很有必要记录一下, 哈哈.

默认情况下, 不写content-type, 是以json的方式来传递, (Content-Type: application/json;charset=UTF-8)

axios({
 url:'/api/connect/token',
 method: 'post',
 data: {
 firstName: 'Fred',
 lastName: 'Flintstone'
 }).then(res = {
 console.log(1234, res.data)
 }).catch(error = {
 console.log(error)
 })

Headers如下:

Request Payload
{ firstName: "Fred", lastName: "Flintstone"}

content-type改成x-www-form-urlencoded, 即表单提交方式

axios({
 url:'/api/connect/token',
 method: 'post',
 data: {
 firstName: 'Fred',
 lastName: 'Flintstone'
 headers: {
 'Content-type': 'application/x-www-form-urlencoded'
 }).then(res = {
 console.log(1234, res.data)
 }).catch(error = {
 console.log(error)
 })

Headers如下:

Form Data
{"firstName":"Fred","lastName":"Flintstone"}: 

另一种情况, 序列化成字符串形式传递

axios({
 url:'/api/connect/token',
 method: 'post',
 data: JSON.stringify({
 firstName: 'Fred',
 lastName: 'Flintstone'
 }).then(res = {
 console.log(1234, res.data)
 }).catch(error = {
 console.log(error)
 })

结果跟上面一致:

Form Data
{"firstName":"Fred","lastName":"Flintstone"}: 

还有一种常见情况, 通过qs库对数据进行编码(前提要安装qs)

import qs from 'qs'
axios({
 url:'/api/connect/token',
 method: 'post',
 data: qs.stringify({
 firstName: 'Fred',
 lastName: 'Flintstone'
 }).then(res = {
 console.log(1234, res.data)
 }).catch(error = {
 console.log(error)
 })

结果:

Request Headers
Content-Type: application/x-www-form-urlencoded

以上这篇使用axios请求接口,几种content-type的区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持凡科。