以编程方式启动 Sails 应用程序。
这与您在运行
sails lift
时看到的完全相同。它 加载 应用程序,运行其引导程序,然后开始侦听 HTTP 请求和 WebSocket 连接。这对构建依赖于 HTTP 请求的自上而下的集成测试以及在 Sails 之上构建更高级的工具很有用。
sailsApp.lift(configOverrides, function (err) {
});
或者
sailsApp.lift(function (err) {...});
参数 | 类型 | 详情 | |
---|---|---|---|
1 | configOverrides | 将覆盖配置文件中任何冲突选项的配置字典。如果提供,这将与 sails.config 顶部合并。 |
参数 | 类型 | 详情 | |
---|---|---|---|
1 | err | 启动时遇到的错误,或 undefined (如果没有任何错误)。 |
var Sails = require('sails').constructor;
var sailsApp = new Sails();
sailsApp.lift({
log: { level: 'warn' }
}, function (err) {
if (err) {
console.log('Error occurred lifting Sails app:', err);
return;
}
// --•
console.log('Sails app lifted successfully!');
});
- 之间区别
.lift()
和.load()
是.lift()
会采取以下额外步骤:(1)运行应用程序的 引导程序(如果有),以及(2)发出ready
事件。核心http
钩子通常会通过在sails.config.port
配置的端口(默认情况下为 1337)上启动 HTTP 服务器来响应ready
事件。- 当 Sails 应用程序完全启动时,它也会发出
lifted
事件。- 除了
NODE_ENV
和PORT
之外,通过环境变量设置的配置 不会自动应用于使用.lift()
启动的应用程序,也不会应用于.sailsrc
文件 中设置的选项。如果您希望使用这些配置值,可以通过require('sails/accessible/rc')('sails')
检索它们,并将它们作为第一个参数传递给.lift()
。