Python 即使出现语法错误,也要保持simpleserver处于活动状态
有没有一种方法可以配置Flask用于不退出每个语法错误的简单服务器Python 即使出现语法错误,也要保持simpleserver处于活动状态,python,flask,wsgi,werkzeug,Python,Flask,Wsgi,Werkzeug,有没有一种方法可以配置Flask用于不退出每个语法错误的简单服务器 app = Flask(__name__) app.run(host='0.0.0.0', debug=True, use_debugger=True, passthrough_errors=False); 目前,我正在为简单服务器使用此设置。 将passthrough_errors设置为False意味着大多数错误实际上使进程保持活动状态,以便我可以使用交互式调试器,但语法错误仍然会退出程序。我尝试了不同的配置值,但没有找到任
app = Flask(__name__)
app.run(host='0.0.0.0', debug=True, use_debugger=True, passthrough_errors=False);
目前,我正在为简单服务器使用此设置。
将passthrough_errors设置为False意味着大多数错误实际上使进程保持活动状态,以便我可以使用交互式调试器,但语法错误仍然会退出程序。我尝试了不同的配置值,但没有找到任何有效的配置值。谢谢 根据Python文档,有两种类型或错误:
我一直都在点击这篇文章,并在早些时候浏览了你的帖子,寻找解决方案。经过一段时间的实验,我破解了一个装饰程序,你可以用它来包装你的初始化代码,这样如果它失败了,重新加载程序将继续工作。查看并让我知道您的想法。那么真的没有办法让服务器保持活动状态吗?继续重新启动服务器似乎是一个非常烦人的问题。在Python中,语法错误只是另一种异常类型。您可以在调用exec()时捕获它们,但也可以在导入时捕获它们。只需在try/except中包装您的导入,您就可以在那里捕获SyntaxError。嗨!我刚刚试过,它似乎在工作,但遗憾的是,我已经转向更多的要求,这需要gunicorn正常工作。用普通的python app.py用gevent socketio构建东西是很困难的,就我所见,我无法让gunicorn支持代码重新加载。不过,它可以与标准设置一起使用!相关的:
>>> try:
... exec('x===6')
... except SyntaxError:
... print('Hello!')
...
Hello!