在执行Express Server之前,我必须执行ansync函数,因为我将获得一个参数以将其传递给API。因此,我想我可以调用异步函数,并保证可以调用我的快递服务器(直到现在我已经用“ node my_server.js”执行了) 我怎样才能做到这一点?如何在新js上调用my_server.js?
答案 0 :(得分:0)
您可以使用节点中的fork
模块child_process
进行新的处理。
const { fork } = require('child_process')
const path = require('path')
const newProcess = fork(path.join(__dirname, 'path/to/jsfile'), [...otherArgs])
答案 1 :(得分:0)
通常仅在运行node server.js
时不会创建服务器。它将仅执行server.js
中包含的javascript。如果您通过express或express()
通过普通nodejs创建服务器,则代码到达createServer
时将创建服务器。
这意味着您可能可以做到
var param = await someSync();
// Set the param in global context and then create your server
var app = express();
// or
var app = createHttpServer()
所以现在在您的应用开始之前,您将拥有该参数,并且可以在您的api中使用它
如果您使用Promise而不是异步,只需在Promise的then
中创建服务器,这还可以确保您的应用在服务器启动之前就具有该参数