axios如何在nodejs项目里封装_axios二次封装大型项目的api层
时间: 2023-10-25 22:13:06 浏览: 312
axios.js的二次封装
在Node.js项目中封装axios的步骤如下:
1. 安装axios:在项目根目录下执行命令`npm install axios --save`。
2. 创建axios实例:在项目根目录下新建一个`api.js`文件,使用axios.create()方法创建一个axios实例,可以设置默认的配置项,如请求头、超时时间等。
```javascript
const axios = require('axios');
const instance = axios.create({
baseURL: 'https://some-domain.com/api/',
timeout: 1000,
headers: {'X-Custom-Header': 'foobar'}
});
module.exports = instance;
```
3. 封装API请求:在`api.js`文件中,按照业务逻辑封装API请求方法,可以将请求参数和请求头封装成一个对象,方便调用。
```javascript
const axios = require('axios');
const instance = axios.create({
baseURL: 'https://some-domain.com/api/',
timeout: 1000,
headers: {'X-Custom-Header': 'foobar'}
});
function login(username, password) {
return instance.post('/login', {
username: username,
password: password
});
}
function getUserInfo(token) {
return instance.get('/user', {
headers: {
'Authorization': `Bearer ${token}`
}
});
}
module.exports = {
login,
getUserInfo
};
```
4. 使用API请求:在业务代码中,通过require()方法引入`api.js`文件中封装的API请求方法,进行调用。
```javascript
const api = require('./api.js');
api.login('username', 'password')
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
api.getUserInfo('token')
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
```
以上就是在Node.js项目中封装axios的基本步骤,通过封装API请求,可以更好地管理和维护项目中的接口。
阅读全文