Node.js正确的数据库吸引方式

时间:2018-10-24 15:43:04

标签: node.js mongodb

我正在Nodejs中工作。

对于“获取”路线,我使用了如下所示的方法:

testnomatch <- (newtest[which(newtest[, 4] != newtest[, 9] ), ] || newtest[which(newtest[, 6] != newtest[, 11] ), ])

这是正确的方法吗?因为我看到了一些使用GET,POST,PUT和DELETE的教程

任何人都可以提出正确的方法吗?

在上方检查我更新的完整代码

这是正确的方法吗 还是可以建议其他方式

如果我在这方面错了

2 个答案:

答案 0 :(得分:0)

因此,我将首先从旁观者的角度说“正确”。根据您的目标和您的喜好,有很多不同的做事方式。现在,您正在重新做一些不需要的事情。

就个人而言,我倾向于在可能的情况下偏爱DRY原则(DRY:不要重复自己),因此我的代码结构可能与您的代码有所不同。

例如,如果您知道所有的“ Books”路由都需要进行身份验证,则可以执行以下操作:

// all routes on the '/books' path have to be logged in with a JWT
router.use('/books', passport.authenticate('jwt', { session: false}));

此后,将根据您配置的JWT strategy来向req.user填充用户,并且您知道您的所有Books路由都会通过身份验证,因此可以跳过所有的getToken您正在做的事情。

最后,您只显示了无参数的路由,但是如果最终有一些需要参数的路由(例如,如果要放置特定的书来更新它),则{{1}将获得很多可重用性}用法。对于一个简单但完整的示例(为了更简洁也切换到ES2015语法):

router.param

答案 1 :(得分:-1)

是的,这是正确的方法。

GET,POST,PUT,DELETE和PATCH是CRUD原则,应在应用程序中使用API​​。例如,当您想向数据库中添加内容时,应使用GET获取内容并使用POST。但是,这些是API的方法,而不是数据库交互的方法。这些取决于您使用的数据库API。