Loopback3定期调用远程方法或API

问题描述:

基本上,我的要求是不断寻找文件夹中的新文件,读取文件的内容并调用回送API。Loopback3定期调用远程方法或API

为了实现这个目标,我试图做一些象下面这样:

我在回送一个远程方法这就需要每2分钟后周期性,即调用。我读到这里的官方回环文档中的异步启动脚本: https://loopback.io/doc/en/lb2/Defining-boot-scripts#synchronous-and-asynchronous-boot-scripts 到目前为止,我已经能够写出下面的代码:

module.exports = function(app, callback) { 
    setInterval(function() { 
    console.log('Hello world'); 
    callback(); 
    }, 120000); 
}; 

但这下方抛出一个错误。

error: uncaughtException: listen EADDRINUSE :::443 

另外,有没有办法从启动脚本调用远程方法?环回是否支持cron/schedular或轮询功能。我是否需要编写一个单独的nodejs应用程序来定期调用API。

谢谢

+0

它抛出一个错误? –

+0

对不起,我已经更新了错误消息的问题。这是否是正确的呼叫方式?它不会阻止其他API? –

您的错误指出您的地址(端口号)如果服务器已被使用。

error: uncaughtException: listen EADDRINUSE :::443

  1. 您可以尝试听一些其他的端口号

    app.listen(3000,函数(){ 的console.log( '监听3000') });

  2. 同一端口

首先运行杀过程中,你会想知道哪些进程正在使用端口3000

sudo lsof -i :3000 

这将列出所有PID监听此端口上,一旦你有PID可以通过以下方式终止:

kill -9 {PID} 
  1. 检查你的代码没有调用同一个端口上的多个听

让我知道这是不是解决你的问题

+0

不,我使用http:// localhost:443/api来公开我使用loopback创建的API。我正在尝试在同一个应用程序中编写异步启动脚本。但每当它遇到回调()时,都会引发此错误。 –