Firebasepipe理员SDK – DELETE响应不正确
我是新来的JavaScript(但不是新的编程)。
我正在使用NodeJs中的Firebase ADMIN SDK创build一个REST API。 如果资源存在,我能够成功执行DELETE请求。 但如果不存在(或者ID不正确),POSTMAN的响应仍然是成功的。
我想这个callback函数是不正确的。 当我实现GET /:id和PUT /:id时,我可能会看到相同的问题。 请帮忙。
// DELETE /api/billingPlans/:id // Delete a billing plan routes.delete('/:id', (req, res) => { var ref = admin.database().ref(firebaseNode); //Have also tried snapshot.exists() but similar problem occurs return ref.child(req.params.id).once('value', function(snapshot) { snapshot.ref.remove(function(error){ if(!error) res.status(200).json({"result" : "DELETE Success"}); else res.status(204).json({"error" : "Not found"}); }); });
经过一段时间的思考,我做了。 状态码204在POSTMAN中不发送正确格式的正文。 不知道为什么。 简化代码,现在代码如下所示:
// DELETE /api/billingPlans/:id // Delete a billing plan routes.delete('/:id', (req, res) => { var ref = Common.admin.database().ref(firebaseRootNode); ref.child(req.params.id).once('value', function(snapshot) { if(snapshot.exists()){ snapshot.ref.remove(); return res.status(200).json({"result" : "DELETE Success"}); } //204 does not send back a body return res.status(200).json({"error" : "Not found"}); }); });
- 使用Node.js和Firebase竞争条件
- 如何发送通知给所有用户,除了android中的发件人使用节点js的firebase函数
- 从本地运行的云function调用“subscribeToTopic”
- 在Firebase云端函数中使用toLocaleString格式化货币值
- Firebase云端function非常慢
- 是否可以在本地testingFirebase触发器?
- 使用新的Firebase的Nodejs应用程序不会检索数据库项目
- Firebase:如何以编程方式为类似于`firebase.auth()。currentUser.getIdToken(false)`的特定用户生成一个jwt标记?
- 如何通过HTTPS将Firebase令牌发送到后端(Node / Express)