我正在尝试从Flask RESTful documentation运行该教程,但是在运行资源丰富的路由代码时遇到错误。我已经逐字复制了代码,但是当我尝试运行代码时,遇到以下情况:
export FLASK_APP=api.py
flask run
curl http://localhost:5000/todo1 -d "data=Remember the milk" -X PUT
返回的是:
{"message": "Internal Server Error"}
有人对这里发生的事情有任何建议吗?任何见识将不胜感激。
答案 0 :(得分:0)
使用flask run
命令时,生产模式是默认设置。如果Flask在生产模式下运行时遇到错误,它将自动排除所有错误,仅返回通用{"message": "Internal Server Error"}
。但是,对于开发人员而言,这很烦人,因为它很难确定错误的根本原因。
Flask具有内置的开发模式,除其他功能外,它将禁用此功能。由于您使用的是cli烧瓶,因此最简单的方法是设置环境变量。
# Mac/Linux
$ export FLASK_ENV=development
# Windows
$ set FLASK_ENV=development
# The same command is used to undo this on both platforms
$ unset FLASK_ENV
这不会自动修复您遇到的错误,但是它将使您看到为什么遇到错误,这通常更重要。
您可以详细了解开发模式here的其他可用选项