【发布时间】:2016-08-25 17:51:42
【问题描述】:
我有一个 REST API,它允许用户添加名称和 URL。在这个 POST 请求中,名称和 url 被添加到我的 mongodb 中。
这是 POST 请求
curl -XPOST http://localhost:8080/urls -d 'name=John&url=http://111.11.1.111:1111'
这就是它被添加到数据库的方式:
{ "_id" : ObjectId("57bd87e7c94363a17620ab4c"), "name" : "John", "url" : "http://111.11.1.111:1111", "__v" : 0 }
这是我允许 POST 的路线:
router.post('/', function (req, res, next) {
Urls.create(req.body, function (err, post) {
if (err) return next(err)
res.json(post)
})
})
这样我就可以添加多个具有相同名称和 url 的 url - 没有验证。
当用户尝试再次将相同的名称和/或 url 插入 dbs 时,如何确保引发错误?
我不确定从哪里开始,但我认为这是一个 dbs 选项?例如。 findById 如果存在,是否添加到 dbs 中?
【问题讨论】:
-
您可以创建索引,请参考此链接It contains the solution of your problem
标签: node.js mongodb rest mongoose