我在我的开发服务器上遇到了同样的问题。我已经查看了stackoverflow.com.…/问询/46799365/…但这对我没有用。
python -V
Python 2.7.11
一旦我调用stripe,我就得到了对TLS低于1.2版本的测试模式请求的支持已经被禁用,并将在2018年6月13日取消对实时模式的支持。请使用TLS 1.2或更高版本启动HTTPS连接。您可以在https://stripe.com/blog/upgrading-tls了解更多这方面的信息。
我的app.yaml将ssl设置为“最新”库:- name: django版本:"1.9“-名称: jinja2版本:"2.6”-名称:"0.15“-名称: ssl版本:最新名称: pycrypto:
那么我应该用sandbox.py做点什么吗?我认为我的请求是版本2.16.0,因为我遇到了其他环境问题,而不是。是他的错还是其他原因?
这是准确的错误
PermissionError at /
Request req_DrUOViv9FnjhAx: Support for test mode requests made with versions
of TLS lower than 1.2 has been disabled, and support in live mode will be dropped on June 13, 2018. Please initiate HTTPS connections with TLS 1.2 or later. You can learn more about this at https://stripe.com/blog/upgrading-tls.
Request Method:
GET
Request URL:
http://localhost:8080/
Django Version:
1.9.5
Exception Type:
PermissionError
Exception Value:
Request req_DrUOViv9FnjhAx: Support for test mode requests made with versions of TLS lower than 1.2 has been disabled, and support in live mode will be dropped on June 13, 2018. Please initiate HTTPS connections with TLS 1.2 or later. You can learn more about this at https://stripe.com/blog/upgrading-tls.
Exception Location:
lib/stripe/api_requestor.py in handle_error_response, line 178
Python Executable:
/Users/USERNAME/PycharmProjects/PROJECTNAME/virtualenv-dev/bin/python
Python Version:
2.7.11
Python Path:
['/Users/USERNAME/PycharmProjects/PROJECTNAME',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine',
'/Users/USERNAME/PycharmProjects/PROJECTNAME',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine',
'/Users/USERNAME/PycharmProjects/PROJECTNAME/virtualenv/lib/python2.7',
'/Users/USERNAME/PycharmProjects/PROJECTNAME/virtualenv/lib/python2.7/lib-dynload',
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine/lib/django-1.9',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine/lib/jinja2-2.6',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine/lib/markupsafe-0.15',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine/lib/ssl-2.7.11',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine/lib/pycrypto-2.6',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine/lib/setuptools-0.6c11',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine/lib/protorpc-1.0',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine/lib/pytz-2017.2',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine/lib/webapp2-2.3',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine/lib/webob-1.1.1',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine/lib/werkzeug-0.11.10',
'/Users/USERNAME/Downloads/google-cloud-sdk/platform/google_appengine/lib/yaml-3.10',
'lib']
Server time:
Sat, 24 Mar 2018 00:43:28 -0500发布于 2018-04-13 20:13:13
希望这能帮助在这种情况下的人…我有我的IT管理员帮助我,这是一个组合的事情,所以我在这里张贴的解决方案,为我的情况,以拯救其他人从同样的挫折。
这些指令假设您是以管理员身份运行这些命令的
首先删除HomeBrew:
echo -ne 'y\n‘区/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)“sudo rm -rf /usr/local/Homebrew sudo rm -rf /usr/local/Caskroom sudo rm -rf /usr/local/curl
删除安装的其他Pythons (v2)
sudo rm /Library/Frameworks/Python.framework/Versions/2.7 sudo rm -rf“/ -rf /Python2.7”
检查链接并删除在路径中找到的任何有单元格的链接。
ls '../Library/Frameworks/Python.framework/Versions/2.7‘/usr/ -l /bin/bin_ grep _ grep \grep\grep 'Cellar’unlink <##删除您找到的##>
重新安装国产啤酒
echo -ne 'y\n‘bin /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)“
添加openssl
brew安装openssl brew后安装openssl brew链接openssl -强制
必要时强制链接openssl
ln /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/ -s /lib/ ln -s /usr/-s/opt/-s/libssl.1.0.0.dylib/usr/-s/lib/-s
添加Python
brew安装python@2 brew后安装python@2 brew链接python@2 -force
链接openssl和Python (确保您已经安装了这些版本)
ln -s /usr/local/Cellar/openssl/1.0.2o/bin/openssl /usr/local/bin/openssl ln -s /usr/local/c业力/openssl/1.0.2o/bin/openssl /usr/local/ssl/bin/openssl -s /usr/local/Cellar/python/2.7.14/bin/python /usr/local/bin/python
清洁HomeBrew一旦安装
brew清理-s brew桶清理brew prune
从这里开始,命令显示了正确的版本。
python -c‘导入ssl;打印ssl.OPENSSL_VERSION’
发布于 2018-03-24 12:47:22
大约一个月前我花了很多时间在这件事上。这是一个巨大的痛苦,但我终于开始工作了。
我遇到的一个问题是,Brew在其python版本中做了一些非常烦人的事情。它使python成为默认的v3,因此如果在shell中键入python,就会得到v3,而不是v2。我手动更改了'/usr/local/bin‘中的相关符号链接,使v2成为默认链接。
我不记得我所做的所有步骤,但您可能希望您的'/usr/local/bin‘看起来像这样:
openssl -> /usr/local/Cellar/openssl/1.0.2n/bin/openssl
pip -> ../Cellar/python/2.7.14_3/bin/pip2
python -> ../Cellar/python/2.7.14_3/bin/python2然后,您需要删除您的虚拟服务器并重新创建它们。
请注意,我根本不使用python v3,所以如果您同时需要v2和v3,那么就使用YMMV。
发布于 2018-03-24 06:45:22
除了使用最新的GAE库之外,在本地开发服务器上运行应用程序时,还可能需要升级本地系统的openssl库。
来自如何将Stripe集成从TLS 1.0升级到TLS 1.2? (其他特定操作系统版本分别提到):
并且来自如何升级我的OpenSSL以支持TLS 1.2? (其他特定的操作系统版本分别提到):
如果您正在使用任何其他Linux变体,则需要确保运行
openssl version的版本至少为1.0.1。如果没有,则需要进行包更新,并且可能需要升级到较新版本的操作系统。
https://stackoverflow.com/questions/49461349
复制相似问题