无名阁,只为技术而生。流水不争先,争的是滔滔不绝。

(axios content-type) axios请求头设置常见Content-Type和对应参数的处理方式 如何在 Axios 中设定请求头的 ContentType 全网首发(图文详解1)

前沿技术 Micheal 6个月前 (06-14) 73次浏览 已收录 扫描二维码

(axios content-type) axios请求头设置常见Content-Type和对应参数的处理方式

在Web开发过程中,我们常常要使用HTTP库发送请求,并且需要设定请求头(Request Header)。其中,Content-Type字段是非常常见的一个。它决定了我们发送的请求体是以何种方式进行编码,常见的值有三种:application/jsonapplication/x-www-form-urlencodedmultipart/form-data

那么我们该如何在 axios 中设定请求头的Content-Type并发送请求呢?下面是三种场景的具体使用方式:

  • Content-Typeapplication/json时,我们直接发送JSON格式的请求体。这在发送较为复杂的结构,比如嵌套的JSON或数组时非常有用。
const axios = require('axios');

axios.post('http://httpbin.org/post', {
        foo: 'bar',
        nested: {a: 'b'},
        array: ['c', 'd']
}, {headers: {'Content-Type': 'application/json'}})
    .then(response => console.log(response.data))
    .catch(error => console.error(error));
  • Content-Typeapplication/x-www-form-urlencoded时,我们需要转换我们的请求体为URL编码的格式。这种情况在POST普通的键值对时常出现。
const axios = require('axios');
const qs = require('querystring');

const requestBody = {foo: 'bar'};

axios.post('http://httpbin.org/post', qs.stringify(requestBody), {headers: {'Content-Type': 'application/x-www-form-urlencoded'}})
    .then(response => console.log(response.data))
    .catch(error => console.error(error));
  • Content-Typemultipart/form-data时,我们常常在上传文件时使用。不同于以上两种,这里我们直接传入一个FormData对象。
const axios = require('axios');
const FormData = require('form-data');
const fs = require('fs');

const form = new FormData();
form.append('file', fs.createReadStream('/path/to/file'));

axios.post('http://httpbin.org/post', form, {headers: form.getHeaders()})
    .then(response => console.log(response.data))
    .catch(error => console.error(error));

以上就是三种常见的设置和使用方法,希望对你有所帮助。
(scope provided) maven依赖关系中的provided使用详解 Maven 依赖关系中 provided 使用解释 全网首发(图文详解1)
(linux启动tomcat) 在Linux服务器下启动tomcat的三种方式 Tomcat 启动方式简介:主要有三种启动方式 全网首发(图文详解1)

喜欢 (0)
[]
分享 (0)
关于作者:
流水不争先,争的是滔滔不绝