Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将路径作为VS代码中的参数值设置为自定义启动器(Flask-证书路径)_Python_Flask_Visual Studio Code_Vscode Debugger - Fatal编程技术网

Python 将路径作为VS代码中的参数值设置为自定义启动器(Flask-证书路径)

Python 将路径作为VS代码中的参数值设置为自定义启动器(Flask-证书路径),python,flask,visual-studio-code,vscode-debugger,Python,Flask,Visual Studio Code,Vscode Debugger,其中有一个示例显示了如何设置烧瓶。当我尝试提供自签名证书路径时,问题就开始了。我已尝试添加以下配置: { "name": "Python: Flask", "type": "python", "request": "launch", "module": "flask", "env": { "FLASK_APP": "app.py" }, "args":

其中有一个示例显示了如何设置
烧瓶
。当我尝试提供自签名证书路径时,问题就开始了。我已尝试添加以下配置:

    {
        "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
    },
我已尝试提供密钥/证书,如下所示:

  • C:\\FULL\u路径\\到\\文件
  • C:/FULL_路径/到/文件
  • 'C:\\FULL\u路径\\到\\文件'
  • \“C:\\FULL\u路径\\TO\\FILE\”
我总是收到以下错误消息之一:
错误:“--key”的值无效:“--cert”也必须指定。
错误:“--key”:文件“E:\Docs\learn\u py\viberbot\key.pem”的值无效。

这正是由
VS code
扩展生成的命令:

cd e:\Docs\learn\u py&&cmd/C“set”FLASK\u APP=APP.py”&&set “PythonionEncoding=UTF-8”&设置“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 --默认值--客户端--主机本地主机--端口50573-m flask运行--调试器--无重新加载--主机0.0.0--端口4443--密钥E:\Docs\learn\u py\viberbot\key.pem--证书 E:\Docs\learn\u py\viberbot\certificate.pem“用法:python-m运行 [选项]请尝试“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
        }

错误:“--cert”:文件“E:\Docs\learn\u py\viberbot\certificate.pem”的值无效。不幸的是,这是来自Flask,因此我无法再提供帮助。Flask显然不认为该文件存在,所以可能是权限问题?