当前位置: 首页 > 面试题库 >

如何在不使用ctrl-c的情况下停止烧瓶应用

袁桐
2023-03-14
问题内容

我想实现一个可以使用flask-script停止flask应用程序的命令。我已经搜索了一段时间。因为该框架不提供“ app.stop()”
API,所以我对如何编写此代码感到好奇。我正在使用Ubuntu 12.10和Python 2.7.3。


问题答案:

如果您只是在桌面上运行服务器,则可以公开终结点以终止服务器(有关更多信息,请参见Shutdown The Simple
Server
):

from flask import request
def shutdown_server():
    func = request.environ.get('werkzeug.server.shutdown')
    if func is None:
        raise RuntimeError('Not running with the Werkzeug Server')
    func()

@app.route('/shutdown', methods=['POST'])
def shutdown():
    shutdown_server()
    return 'Server shutting down...'

这是另一种包含更多的方法:

from multiprocessing import Process

server = Process(target=app.run)
server.start()
# ...
server.terminate()
server.join()

让我知道是否有帮助。



 类似资料:
  • 问题内容: 我想实现一个可以使用flask-script停止flask应用程序的命令。我已经搜索了一段时间。因为该框架不提供“ app.stop()” API,所以我对如何编写此代码感到好奇。我正在使用Ubuntu 12.10和Python 2.7.3。 问题答案: 如果仅在桌面上运行服务器,则可以公开终结点以终止服务器: 这是另一种包含更多的方法: 让我知道是否有帮助。

  • 问题内容: 我有一个使用线程并发出大量HTTP请求的python脚本。我认为正在发生的事情是,正在读取HTTP请求(使用urllib2)时,它正在阻塞并且没有响应以停止程序。有没有办法解决? 问题答案: 在Windows上,唯一确定的方法是使用。立即停止每个python脚本! (请注意,在某些键盘上,“中断”被标记为“暂停”。)

  • 我正在用laravel建立一个网站,我想调试我的程序,但很难使用dd(),因为它会立即停止程序,我想让它显示每执行一行,任何想法?任何帮助将不胜感激,谢谢。

  • 问题内容: 我有以下代码: 在发生某些事件之后,我应该停止在的方法中声明的操作,该方法实现。 我怎样才能做到这一点?我无法关闭执行器,只能撤消我的定期任务。我可以用吗?如果可以的话,请告诉我它将如何工作。 问题答案: 使用。该是你的任务的处理。您需要取消此任务,它将不再执行。 实际上,是签名,并将其与参数一起使用将导致当前正在运行的执行线程被调用中断。如果线程在阻塞的可中断调用(例如)中等待,则会

  • 问题内容: 我试图用一个烧瓶形式的sqlalchemy请求的结果填充选择字段。 这是代码: 这是模板: 查看: 模型(仅粘贴了关联表和作者表,很多列都不用了) 我目前收到此错误: 我真正想要的是,选择字段显示作者姓名及其编号,然后将作者编号返回至应用程序(返回至位于头的名为“ add_author”的函数)。 谢谢。 问题答案: 您有两个问题: 正如肖恩·维埃拉(Sean Vieira)在回答中指

  • 我一直在玩流,然后我注意到当我执行以下操作时,它不会在控制台中产生输出: 我认为这是因为是一个非终止流方法,应该使用而不是来终止流并生成结果: 然而,是否有一种方法可以‘提前’终止流,使用一个自定义的终止方法(函数接口),它除了终止流之外什么都不做?..有没有一个适当的方法来利用Java现有的东西来做到这一点? 我知道我可以这样做: 但那感觉很浪费。