Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Loopbackjs 环回4:使用环回4的定时cron示例_Loopbackjs_Loopback_V4l2loopback - Fatal编程技术网

Loopbackjs 环回4:使用环回4的定时cron示例

Loopbackjs 环回4:使用环回4的定时cron示例,loopbackjs,loopback,v4l2loopback,Loopbackjs,Loopback,V4l2loopback,因为我对loopback4和Typescript非常陌生,知道我们必须使用自定义引导程序来实现诸如Cron之类的调度任务 我需要一个这样做的代码片段,即一个自定义引导器类,它实现了配置、发现和加载的引导器阶段,以运行Cron,我不确定这是不是一种方法,但这对我来说是可行的 首先在项目文件夹中创建一个组件。我创建了src\components\cron.component.ts import { Component } from "@loopback/core"; import { CronJo

因为我对loopback4和Typescript非常陌生,知道我们必须使用自定义引导程序来实现诸如Cron之类的调度任务


我需要一个这样做的代码片段,即一个自定义引导器类,它实现了配置、发现和加载的引导器阶段,以运行Cron,我不确定这是不是一种方法,但这对我来说是可行的

首先在项目文件夹中创建一个组件。我创建了
src\components\cron.component.ts

import { Component } from "@loopback/core";
import { CronJob, CronCommand } from "cron"

export class CronJobsComponent implements Component {
    private cj: CronJob;
    constructor(){
        this.start()
    }

    async start(){
        this.cj = new CronJob('* * * * * *', this.showMessage)
        this.cj.start();
    }

    showMessage:CronCommand = async () => {
        console.log("inside cron jobs")
    }

}
接下来在
application.ts
文件中导入我们的组件

从“/components”导入{CronJobsComponent}

并在构造函数中注册我们的新组件

this.component(CronJobsComponent)

corn作业在应用程序启动时启动

我曾经和


希望这对您有所帮助。

我不确定这是不是一种方法,但这对我来说很有效

首先在项目文件夹中创建一个组件。我创建了
src\components\cron.component.ts

import { Component } from "@loopback/core";
import { CronJob, CronCommand } from "cron"

export class CronJobsComponent implements Component {
    private cj: CronJob;
    constructor(){
        this.start()
    }

    async start(){
        this.cj = new CronJob('* * * * * *', this.showMessage)
        this.cj.start();
    }

    showMessage:CronCommand = async () => {
        console.log("inside cron jobs")
    }

}
接下来在
application.ts
文件中导入我们的组件

从“/components”导入{CronJobsComponent}

并在构造函数中注册我们的新组件

this.component(CronJobsComponent)

corn作业在应用程序启动时启动

我曾经和


希望这对您有所帮助。

您始终可以创建cron端点

然后可以将curl命令添加到crontab中

curl http://localhost:3000/cron
这种方法是处理关注点分离的一种很好的方法。如果您的api是在kubernetes上运行的微服务,那么可以使用
cron
资源调用cron端点


如果应用程序是公共的,只需确保端点是安全的。

您始终可以创建cron端点

然后可以将curl命令添加到crontab中

curl http://localhost:3000/cron
这种方法是处理关注点分离的一种很好的方法。如果您的api是在kubernetes上运行的微服务,那么可以使用
cron
资源调用cron端点

如果应用程序是公共的,请确保端点是安全的。

出于某种原因,我看到“内部cron作业”每个作业打印两次。我的CronJob每10秒运行一次CronJob('*/10*****',this.ShowMessage)。有人知道吗?出于某种原因,我看到“内部cron作业”每个作业打印两次。我的CronJob每10秒运行一次CronJob('*/10*****',this.ShowMessage)。有人知道吗?