运行初始代码后,Express Node接受请求

时间:2017-02-19 08:17:17

标签: node.js express

我有一个带有express和socket.io的应用程序。我向3d party api发出请求并将响应数据存储在数组中:

var codes = ['a', 'b', 'c']
var results=[]

var calls = codes.map(code=>{
    var url = 'http://example.com?code='+code           
    return axios.get(url);
});                     

axios.all(calls)
.then(function(data){
    results=data
})

但我在我的路线中使用结果数组 - 我将它发送给所有用户作为回应。 如何确保重启后 - 用户不会得到一个空数组?

1 个答案:

答案 0 :(得分:1)

为此,您需要一个数据库或某种服务器。当nodejs重新启动时,它会启动整个脚本。这意味着它将重新定义所有变量,并重新启动所有进程。

如果您希望它从您停止的位置开始,您可以使用基于该URL运行不同代码的服务器。您还可以在重新启动之前将一些数据写入文件,然后您可以查看数据并根据所说的内容运行不同的代码。

希望这有帮助!