我在分离我们的移动应用程序和 Web 界面的 api 调用时遇到了很大的麻烦,基本上代码是相同的,但响应应该不同(html 用于 web 和 json 用于来自应用程序的 api 调用)
所以现在我有这样的路由:
app.post('/post', auth.needed, posts.create)
app.post('/addPost', posts.createJson)
第一个用于网络应用程序,第二个用于
但是“posts.create”中的逻辑是相同的,它基本上是上传图像并将帖子保存到数据库,现在我已经复制了代码并寻求结构化建议如何正确执行此操作以及类似情况的最佳实践是什么谢谢!
exports.create = function (req, res) {
var post= new Post(req.body)
post.user = req.user
//custom logic
post.uplSave(req.files.image, function (err) {
if (!err) {
return res.redirect('/posts/'+post._id)
}
}
}
exports.createJson = function (req, res) {
var post = new Post(req.body)
post.user = req.user
//custom logic
post.uplSave(req.files.image, function (err) {
if (!err) {
res.json({
data: post,
})
}
}
}