我正在尝试从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"}
有人对这里发生的事情有任何建议吗?任何见识将不胜感激。
使用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的其他可用选项的更多信息>