为什么我需要应用程序.CRUD 如果我已经可以使用 db.query



对不起,标题混乱。 这就是我想问的:

为什么我需要使用 app.get/post/update/etc... 如果在此我有实际执行查询的db.query(q)...

谢谢:)

相关代码:

app.post('/user',(req,res)=>{
const {body} = req,
{id,name,phone} = body,
q = `INSERT INTO public.users(
id, name, phone)
VALUES (${id}, '${name}', '${phone}');`
// debugger;
db.query(q,(err,dbRes)=>{
if(err)
res.status(400).send(err)
else
res.send({
id,name,phone
})
})
})

是的,当然。示例代码运行良好。 但是在你的例子中有很多难闻的气味。

  1. 它会暴露你的存储实现,无法有效地阻止黑客代码。

  2. 如果您的服务(而不仅仅是 CRUD 服务(它结合了存储层和逻辑层。会导致 express 和 MongoDB(例如(耦合。有些日子你想使用其他存储,需要在服务层中更改很多代码。

  3. 这不是一个好的做法,随着代码库中的代码越来越多,我们将提取更多的边界上下文。最后,成为"应用程序"。CRUD"架构。

如果服务很简单,你可以做任何事情。但是,请在重要服务中更多地考虑软件体系结构。

不管是什么,这取决于你设计和接受什么。

如果你正在开发一个fontend,并且你觉得使用后端没有用,这意味着你可以直接查询。但是,如果您在访问数据库之前需要安全性(身份验证(,您应该有一个后端(您的 DRUD(,并且可以轻松处理动态查询。你应该拥有它。

相关内容

最新更新