Node.js 在这个例子中使用GET而不是POST的原因是什么?
我正在浏览的Javascript演示中,对路径Node.js 在这个例子中使用GET而不是POST的原因是什么?,node.js,express,pg-promise,Node.js,Express,Pg Promise,我正在浏览的Javascript演示中,对路径/api/users/:name有一个问题 如果在本地运行,用户将被输入到数据库中,但这不是一篇博文有什么原因吗?使用GET在数据库中创建用户有什么好处吗 // index.js // -------- app.get('/api/users/:name', async (req, res) => { try { const data = (req) => { return db.task('add-user',
/api/users/:name
有一个问题
如果在本地运行,用户将被输入到数据库中,但这不是一篇博文有什么原因吗?使用GET在数据库中创建用户有什么好处吗
// index.js
// --------
app.get('/api/users/:name', async (req, res) => {
try {
const data = (req) => {
return db.task('add-user', async (t) => {
const user = await t.users.findByName(req.params.name);
return user || t.users.add(req.params.name);
});
};
} catch (err) {
// do something with error
}
});
为简洁起见,我将省略t.users.findByName(name)
和t.users.add(name)
的代码,但它们使用QueryFile
执行SQL命令
编辑:更新pg promise演示的链接。位于该文件顶部:
重要:
不要从这里重复使用代码的HTTP服务部分
它是一个具有just-GET处理程序的过于简化的HTTP服务,因为:
我认为很明显,您不应该遵循演示的HTTP实现,而应该只关注其数据库层。演示的目的是教您如何在大型应用程序中组织数据库层,而不是教您如何开发HTTP服务。就我个人而言,我想不出任何理由——这感觉非常错误和危险。我绝不会这么做,因为我只需要浏览一个URL。。我会用同样的问题建议回购。。。也许作者只是为了演示而做的?即使是演示,这也是一个多么糟糕的实践。