在Visual Studio Code python setup tutorial中有一个例子,它显示了如何设置Flask
。当我尝试提供自签名证书路径时,我的问题就出现了。我试图添加以下配置:
{
"name": "Python: Flask",
"type": "python",
"request": "launch",
"module": "flask",
"env": {
"FLASK_APP": "app.py"
},
"args": [
"run",
"--debugger",
"--no-reload",
"--host",
"0.0.0.0",
"--port",
"4443",
"--key",
"${workspaceFolder}\\viberbot\\key.pem",
"--cert",
"${workspaceFolder}\\viberbot\\certificate.pem"
],
"jinja": true
},
我试图提供密钥/证书:
我总是收到以下错误消息之一:Error: Invalid value for "--key": "--cert" must also be specified.
或Error: Invalid value for "--key": File ""E:\Docs\learn_py\viberbot\key.pem"" does not exist.
这是VS Code
扩展生成的确切命令:
cd e:\ Docs \ learn_py && cmd / C“set”FLASK_APP = app.py“&& set”PYTHONIOENCODING = UTF-8“&& set”PYTHONUNBUFFERED = 1“&& C:\ Users \ user \ AppData \ Local \ Programs \ Python \ Python37 \ python.exe c:\ Users \ user.vscode \ extensions \ ms-python.python-2019.2.5558 \ pythonFiles \ ptvsd_launcher.py --default --client --host localhost --port 50573 -m flask运行--debugger --no-reload --host 0.0.0.0 --port 4443 --key E:\ Docs \ learn_py \ viberbot \ key.pem --cert E:\ Docs \ learn_py \ viberbot \ certificate.pem“用法:python -m flask运行[OPTIONS]尝试“python -m flask run --help”获取帮助。
错误:“ - key”的值无效:还必须指定“--cert”。
更新:在做出Brett建议的更改后,我开始收到另一个错误:
* Serving Flask app "app.py"
* Environment: development
* Debug mode: off
Usage: python -m flask run [OPTIONS]
Error: Could not import "app".
我试图将app.py
改为${workspaceFolder}\\viberbot\\app.py
或提供像/E/path/viberbot/app.py
这样的路径,但它没有用。
更新2:我需要做"FLASK_APP": "viberbot\\app.py"
这可能是因为与VS Code提供的默认值相比,本教程中的示例已过时。尝试:
{
"name": "Flask",
"type": "python",
"request": "launch",
"module": "flask",
"env": {
"FLASK_APP": "app.py",
"FLASK_ENV": "development",
"FLASK_DEBUG": "0"
},
"args": [
"run",
"--no-debugger",
"--no-reload",
"--cert",
"${workspaceFolder}\\viberbot\\certificate.pem",
"--key",
"${workspaceFolder}\\viberbot\\key.pem"
],
"jinja": true
}