Node.js 在Axios后端使用GitHub api时出现问题

Node.js 在Axios后端使用GitHub api时出现问题,node.js,express,axios,Node.js,Express,Axios,我试图在我的express应用程序中使用github的api,但它不起作用。 当我将return与res.json(console.log(users))一起使用时,我会根据需要接收所有用户,但当我使用return res.json(users)时;有时我收到erro 500,现在出现以下错误: Converting circular structure to JSON", "name": "TypeError" 我不知道为什么,因为这是一个简单的应用。。 这是我的axios配置: i

我试图在我的express应用程序中使用github的api,但它不起作用。 当我将return与res.json(console.log(users))一起使用时,我会根据需要接收所有用户,但当我使用return res.json(users)时;有时我收到erro 500,现在出现以下错误:

Converting circular structure to JSON",
    "name": "TypeError"
我不知道为什么,因为这是一个简单的应用。。 这是我的axios配置:

import axios from 'axios';

const api = axios.create({
  baseURL: 'https://api.github.com',
});

export default api;

以下是我的方法代码:

class UserController {
  async show(req, res) {
    const { username } = req.query;

    if (!username) {
      return res.status(400).json({ error: 'Invalid user' });
    }
    const user = await api.get(`/users/${username}`);

    return res.json(user);
  }

  async index(req, res) {
    const { page = 1 } = req.query;
    const users = await api.get(`users?since=${page}`);
    return res.json(users);
  }
}

export default new UserController();

您需要从axios响应中获取
数据
属性,不是吗

const user = await api.get(`/users/${username}`);

return res.json(user.data);
请看这里:


request
字段是一个循环结构,因此发送整个响应对象将导致该错误。

axios
返回类似以下内容的响应对象:

data: {...}
status: 200
statusText: ""
headers: {..}
config: {...}
request: {...}
因此,理想情况下,我认为您希望返回
response.data
。所以试试看

const response = await api.get(`/users/${username}`);
res.json(response.data);