Flask应用中的SSL协议错误

0 投票
2 回答
2195 浏览
提问于 2025-05-16 19:20

我一直在尝试运行一个简单的flask应用,但遇到了以下错误。

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, World!'

我用命令python app.py和sudo python app.py来运行它,但总是出现同样的错误。

Traceback (most recent call last):
  File "app.py", line 1, in <module>
    from flask import Flask
  File "/usr/local/lib/python2.7/site-packages/flask/__init__.py", line 17, in <module>
    from werkzeug.exceptions import abort
  File "/usr/local/lib/python2.7/site-packages/werkzeug/__init__.py", line 152, in <module>
    __import__('werkzeug.exceptions')
  File "/usr/local/lib/python2.7/site-packages/werkzeug/exceptions.py", line 71, in <module>
    from werkzeug.wrappers import Response
  File "/usr/local/lib/python2.7/site-packages/werkzeug/wrappers.py", line 26, in <module>
    from werkzeug.http import HTTP_STATUS_CODES, \
  File "/usr/local/lib/python2.7/site-packages/werkzeug/http.py", line 26, in <module>
    from urllib2 import parse_http_list as _parse_list_header
  File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 94, in <module>
    import httplib
  File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 1230, in <module>
    import ssl
  File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ssl.py", line 133, in <module>
    PROTOCOL_SSLv23 = PROTOCOL_TLS
NameError: name 'PROTOCOL_TLS' is not defined

希望能得到帮助,谢谢!

相关问题:

  • 暂无相关问题
暂无标签

2 个回答

1

彻底卸载了Python和它所有的依赖项,然后问题就解决了。

1

这个错误通常是因为你的 OpenSSL 或 PyOpenSSL 版本太旧了。更新 PyOpenSSL 应该可以解决这个问题:

pip install --upgrade pyopenssl

撰写回答