eggjs使用axios
时间: 2023-10-13 21:08:12 浏览: 207
Egg.js 是一个基于 Node.js 和 Koa 的 Web 框架,可以用来快速开发 Web 应用。Axios 是一个基于 Promise 的 HTTP 客户端,可以用于浏览器和 Node.js 上发起 HTTP 请求。
在 Egg.js 中使用 Axios 可以通过在 Controller 层中引入 Axios 的方式来实现。下面是一个使用 Axios 发起 HTTP 请求的示例:
```javascript
const Controller = require('egg').Controller;
const axios = require('axios');
class HomeController extends Controller {
async index() {
const { ctx } = this;
const result = await axios.get('https://api.github.com/users/octocat');
ctx.body = result.data;
}
}
module.exports = HomeController;
```
在上面的示例中,我们在 Controller 层中引入了 Axios 模块,并在 index 方法中使用 Axios 发起了一个 GET 请求。这个请求是向 Github 的 API 发起的,获取了一个名为 octocat 的用户的信息。最后,我们将获取到的数据作为响应体返回给客户端。
需要注意的是,Axios 默认是不支持在 Node.js 中使用的,需要使用一些工具来让它在 Node.js 中运行。在上面的示例中,我们使用了 Node.js 中的 require 语句来引入了 Axios 模块。如果你在 Egg.js 中使用了 ES6 的 import 语法,那么需要使用一些工具来将 Axios 转换成 CommonJS 格式,例如 babel-plugin-transform-async-to-generator。
阅读全文