我正在用NestJS实现一个后端. 我有用户、账户和记录的模式.

我注意到,如果用户具有其他用户的帐户ID,并试图获取不属于他的该帐户的记录,则他可以. 我正在考虑一种策略,在该策略中,只有特定用户可以从数据库中获取数据.

你们有没有什么讲座和书籍推荐给我,让我读一读,以便更多地了解框架和语言的后端不可知性的实现?

从技术上讲,记录模块使用依赖项注入与帐户模块相关,如果用户删除其帐户,则服务将删除与此帐户相关的所有记录.

我正在考虑实现一个函数来检索帐户信息,其中它具有用户ID,如果它与帐户的用户ID和具有用户ID的持有者令牌不匹配,它应该抛出一个错误. 然而,这种方法是不可取的,因为我会有循环依赖关系,并且我会将对数据库的请求加倍到与记录相关的任何CRUD操作,因为我会参考帐户ID信息.

有什么建议吗?

推荐答案

问得好!

在NestJs中,我认为最简单的方法是将表中的行标记为add a userId column in the db tables.

那么,when you query the data, you query it together with the userId.(WHERE user_id = userId)

如果您正确地进行了身份验证,则应该在每个请求的User对象中获得UserID.

你觉得这有道理吗?

Node.js相关问答推荐

无法验证叶签名|无法验证第一个证书

在Node JS中获取控制台选项卡标题

如何在mongodb集合中设置数据限制?

MongoDB如果文档S的字段小于另一个字段,则将该字段加一

创建查询以展开数组并筛选出具有特定值的元素之后的元素

GitLab 依赖扫描需要源代码中的 package-lock.json 才能执行

如何从mongoose 对象内嵌套的数组中提取数组元素?

Mongoose post中间件触发deleteMany

如何配置 Nginx React 和 Express

使用 fs.createWriteStream 将数据写入 bigquery (node.js) 时出现模式错误

如何使用填充在mongoose 上保存新数据

图像存储在后端文件夹中,但使用 multer 和 react.js 在前端找不到

Mongoose-更新嵌套数组

为什么我在生产环境中 deproy Next.js 示例项目时 CSS 不起作用?

`npm install` 以Killed结尾

分块 WebSocket 传输

添加git信息到create-react-app

React Native ios build:找不到 node

Javascript在try块内设置const变量

Socket.IO 连接用户数