详解axios在node.js中的post使用攻略
什么是axios?
axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。它支持请求和响应拦截、转换请求数据和响应数据、自动转换 JSON 数据、取消请求等一系列常用功能。
安装axios
在 node.js 中使用 axios,需要通过 npm 安装 axios,使用以下命令进行安装:
npm install axios
在node.js中使用axios发起POST请求
以下是一个使用 axios 在 node.js 中发起 POST 请求的代码示例:
const axios = require('axios');
axios.post('https://jsonplaceholder.typicode.com/posts', {
title: 'foo',
body: 'bar',
userId: 1
})
.then(function (response) {
console.log(response.data);
})
.catch(function (error) {
console.log(error);
});
以上代码会向 https://jsonplaceholder.typicode.com/posts 发起一个 POST 请求,请求的消息体包含三个字段:title、body 和 userId。
在请求成功后,会打印出响应数据。
指定请求头
在通过 axios 发送 POST 请求时,可以手动指定请求头,例如设置 Content-Type 头:
const axios = require('axios');
axios.post('https://jsonplaceholder.typicode.com/posts', {
title: 'foo',
body: 'bar',
userId: 1
}, {
headers: {
'Content-Type': 'application/json'
}
})
.then(function (response) {
console.log(response.data);
})
.catch(function (error) {
console.log(error);
});
以上代码会在请求头中带上 Content-Type 字段为 application/json。
发起多个并发请求
axios 支持同时发起多个并发请求,例如:
const axios = require('axios');
axios.all([
axios.post('https://jsonplaceholder.typicode.com/posts', {
title: 'foo',
body: 'bar',
userId: 1
}),
axios.post('https://jsonplaceholder.typicode.com/posts', {
title: 'hello',
body: 'world',
userId: 2
})
])
.then(axios.spread(function (res1, res2) {
// 两个请求都完成了
console.log(res1.data);
console.log(res2.data);
}))
.catch(function (error) {
console.log(error);
});
以上代码会同时发起两个 POST 请求,请求消息体分别为:
{
title: 'foo',
body: 'bar',
userId: 1
}
{
title: 'hello',
body: 'world',
userId: 2
}
在两个请求都完成后,会将两个请求的响应数据分别打印出来。
以上就是使用 axios 在 node.js 中发起 POST 请求的攻略和示例。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解axios在node.js中的post使用 - Python技术站