免责声明:快递/节点的新功能,在照片托管/图库应用程序上进行练习。
我的理解是路由器用作从服务器到客户端/数据库的端点。
在这种情况下,我有一个名为 storeImages 的功能,它将图像位置存储到数据库,但是从Node js app中调用,而不直接从客户端请求调用。
我应该将 storeImages 作为辅助功能移动到路由器文件夹之外吗?
我有点困惑,因为即使没有直接从客户端发布/获取请求调用,我觉得images.js路由本质上与Image.js模型绑定...和数据库操作不应该存在于它之外。以这种方式思考我错了吗?
如果实际上最好将它保存在路由器文件夹中,那么将所述功能与路由器一起导出的正确方法是什么?下面的当前方法不起作用,我也尝试过:
module.exports = {router:router, storeImages:storeImages, }
但这也不起作用。
var express = require('express');
var router = express.Router();
var Image = require('../models/image');
router.get('/getImageLocations', function(req,res){
//Do Stuff
});
exports.storeImages = function(memoryId, location, comment){
var newImage = new Image({
...
});
Image.storeImageURL(newImage, function(err, user){
...
})
};
module.exports = router;
答案 0 :(得分:2)
路由器是处理http
请求的函数。现在,关于需要进入路由器文件的内容并没有什么硬性规定,但是根据我在代码中的理解,storeImages
是一个接受来自params的函数并且商店会持久存储到数据库中。以下是一些拇指规则: