Nodejs:在节点服务器启动时运行一个js文件
Nodejs: Run a js file on node server startup
我有一些nodejs代码(调度程序和一些数据库查询),每次启动节点服务器时,我都想与应用程序的其余部分一起运行(Express应用程序)
我可以想到的一种方法是创建一个批处理文件,该文件将有两行:一行用于启动节点服务器,另一行用于运行节点js代码(不过还没有测试过这种方法)
我在想是否有一种方法可以通过server.js文件执行静态代码。我想在同一个实例中运行这个
这里有什么帮助吗?
您可以通过在server.js文件中添加require()
函数来执行同一目录中的其他脚本:
var exportedThings = require("./path/to/file.js");
在file.js中,您可以为exports
对象分配值,以将其导出到需要的脚本:
exports.add = function(first,second){
return first + second;
}
现在,在server.js中,您将能够:
exportedThings.add(1, 5); // Outputs 6
您必须为调度程序和数据库查询创建两个模块,以便在任何节点启动时执行它们。在主文件中导入这些模块并初始化启动过程,如计划和数据库查询。
例如:主文件是Server.js
var scheduler=require("/utils/schedular.js");
scheduler.init();
现在你的scheduler.js文件应该如下:
var schedular=function(){
var _self=this;
_self.init=function(){
console.log("init Schedular");
var rule = new cron.RecurrenceRule();
rule.second = 30;
cron.scheduleJob(rule, function(){
console.log(new Date(), 'The 30th second of the minute.');
// write your logic
});
});
}
}
module.exports=new scheduler();
与thins一样,您还创建了另一个文件来执行数据库查询。当您的主文件使用node或永远运行时,您的调度程序和数据库查询也将执行
相关文章:
- 如何在android中使用phonegap将文件从一个文件夹移动/复制到另一个文件夹
- 如何在elfinder插件(一个文件管理器插件)上获得上传前事件
- Sails.js:同时发布文本输入和一个文件
- 正在传递JSONP标头's数据参数到另一个文件中的AJAX请求
- 要求定义另一个文件中的对象
- 是否可以使用JavaScript/AAJAX在客户端创建一个文件
- 如何将所有JS文件连接到一个文件夹中
- 请求准备一个文件并返回路径,允许用户在准备好时下载
- 从AngularJS中的另一个文件中的控制器访问服务
- 将任何CDN配置为只传递一个文件,无论请求的url是什么
- 通过AngularJS promise下载一个文件
- Grunt-将多个文件最小化/处理为一个文件
- 文件的节点自动化移动到另一个文件夹中
- 用于文件移动到另一个文件夹的Javascript自动化
- 需要从一个文件中获取多个模块
- 仅首先需要使用jasmine从节点添加一个文件
- jQuery Mobile样式从另一个文件加载内容
- 最小化CSS/JS文件,并使用命令行创建一个文件
- 我如何制作一个文件的副本并用gump将其移动到父文件夹
- 为什么当我上传文件并点击更多上传另一个文件的第一个删除