如何解决 Python Flask 套接字错误?

How to solve a Python Flask Socket Error?

我是 Python 和 Python-Flask 的新手,运行 出错了。 我正在使用 Ubuntu 18.04.3 LTS 和 Python 2.7.15+ 构建一个 python-flask 网络应用程序。

当我尝试 运行 应用程序时,我 运行 出现以下错误:

  File "home_page.py", line 61, in <module>
    app.run(host="0.0.0.0", debug=True)
  File "/home/XXXXXXX/.local/lib/python2.7/site-packages/flask/app.py", line 990, in run
    run_simple(host, port, self, **options)
  File "/home/XXXXXXX/.local/lib/python2.7/site-packages/werkzeug/serving.py", line 988, in run_simple
    s.bind(server_address)
  File "/usr/lib/python2.7/socket.py", line 228, in meth
    return getattr(self._sock,name)(*args)
socket.error: [Errno 98] Address already in use

我发现的修复方法之一是关闭 puTTY 的 window(我正在使用它来访问 VM),但是,这似乎不是解决此问题的最佳方法。

我不确定如何处理这个错误。如有任何建议,我们将不胜感激。

指定你自己的端口,不要使用保留端口80。因此,您将更改以下内容:

app.run("0.0.0.0:4000", debug=True)

看看这个以及关于保留端口的信息:Reserved TCP/IP ports

试试这个,应该适合你。

    app.run(host="0.0.0.0", 
    port=5000,
    debug=True,
    threaded=True)

port 参数与 value 放在一起将使您的 API 到 运行 在所需的端口上。

附加 threaded 参数将帮助您 API 一次处理多个请求。

希望对您有所帮助。