基本上,我试图通过 id 从 Sequelize 获取用户名。问题是我要么遇到 CORS 问题,要么遇到 500 内部服务器错误,具体取决于响应(状态)
控制器代码
async getUserFromUserId (req, res) {
try {
// const user = await User.findByPk(req.body.id)
const id = req.body.id
const user = await User.findByPk(id)
res.send(user.username)
} catch (err) {
// or res.status(some random number).send() for CORS problem to appear
res.status(500).send({
error: 'an error has occured trying to fetch the users id'
})
}
},
客户端代码
this.notifiedUser = (await UserService.getUserFromUserId({id: UserId})).data
不过,我从邮递员那里得到了 Status: 200 OK。 邮递员解决方案
编辑:我已经看到了 cors 问题的其他 解决方案,但解决方案没有具体说明为什么在解决 cors 问题后我得到“未定义”的结果。
原文由 tokibitsu 发布,翻译遵循 CC BY-SA 4.0 许可协议
好吧,所以我想通了这个问题。在某种程度上,我不必处理任何 cors 的东西,因为我相信这不是问题的主要根源。
因此,与其通过“GET”访问我的数据库数据,不如通过以下方式获取数据:
我做了“POST”来获取数据,并通过简单地这样做来访问数据
这无需从数据库中获取“安全”信息即可访问数据,而是通过从数据库中获取 Observer 对象信息来访问数据库中的数据。
Observer 对象 如下所示,它将用户数据视为对象而不是纯数据。
与数据 对象 相比,每个数据 {…} 都有用户信息。
我不确定我是否使用了正确的词,但这些是我目前理解的范围。