node.js - 在 Axios 的后端使用 GitHub api 的问题
问题描述
我正在尝试在我的 express 应用程序中使用 github 的 api,但它不起作用。当我将 return 与 res.json(console.log(users)) 一起使用时,我会根据需要接收所有用户,但是当我使用 return res.json(users); 有时我收到错误 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();
解决方案
您需要data
从 axios 响应中获取属性,不是吗?
const user = await api.get(`/users/${username}`);
return res.json(user.data);
见这里:https ://github.com/axios/axios#response-schema
该request
字段是一个循环结构,因此发送整个响应对象将导致该错误。
推荐阅读
- javascript - Javascript页面进入事件
- asp.net - 使用 SQLite 数据库在 Azure 上发布时出现“实体框架 SQL 脚本生成失败”错误
- i2c - 为什么 `i2c_smbus_write_byte_data` 在 uClinux 2.4 上会返回“不允许操作”?
- html - 在私有 Bitbucket 服务器上呈现单个 HTML 页面
- javascript - viewer.getPlugin(PhotoSphereViewer.MarkersPlugin) 返回 null
- python - cx_Freeze:Python 错误主脚本。找不到模块错误:没有名为 pygments.lexers.python 的模块
- c# - ML.NET 是否支持带有 RBF 内核的 SVM?
- android - 颤振用户身份验证
- qt - Qt Widget 点击 2D pos 到 3D 世界坐标
- php - 将 PDO 准备好的语句放在 DB_Connector 类中的什么位置 - 在构造函数或函数中?