首页 > 解决方案 > 使用 Flask APScheduler 动态调度作业

问题描述

我正在尝试在advanced.py中给出的代码,并进行以下修改以添加新作业。

我创建了一条添加新工作的路线

@app.route('/add', methods = ['POST'])
def add_to_schedule():
    data = request.get_json()
    print(data)

    d = {
        'id': 'job'+str(random.randint(0, 100)),
        'func': 'flask_aps_code:job1',
        'args': (random.randint(200,300),random.randint(200, 300)),
        'trigger': 'interval',
        'seconds': 10

    }
    print(app.config['JOBS'])
    scheduler.add_job(id = 'job'+str(random.randint(0, 100)), func = job1)
    #app.config.from_object(app.config['JOBS'].append(d))
    return str(app.config['JOBS']), 200

我尝试将作业添加到 config['JOBS'] 以及 scheduler.add_job。但我的新工作都没有被执行。此外,直到我在终端上执行 ctrl+c 后,我的第一个预定作业才会执行,之后第一个预定作业似乎执行了两次。我错过了什么?

编辑:似乎作业运行两次是因为flask reloading,所以忽略它。

标签: python-3.xflaskapscheduler

解决方案


推荐阅读