我使用带有REST API的python-requests来使用post方法上传文件。但是,当使用SSL时,我面临极慢的转移。
import requests
session = requests.session()
session.post("https://my_url", files={'filedata': open('my_file', 'rb')})
我遇到的情况是我只在Python2.7中遇到这个问题,请求== 2.7.0。 以下是我的结果:
带有SSL的请求== 2.7.0的Python2.7 - > 100K上/ S
带有SSL的请求== 2.4.3的Python2.7 - > 21mo / S
带有SSL的请求== 2.7.0的Python3.4 - > 21mo / S
Python3.4 with requests == 2.4.3 with SSL - > 21mo / S
请注意,使用HTTP(没有SSL)我没有任何问题。
我用Pycharm(https://linx.li/selif/uj1q1akc8.svg)描述了我的调用,我们可以看到所有进程时间都发生在WrappedSocket.sendall()中,urllib3 contrib文件中的函数PyOpenSSL:https://github.com/shazow/urllib3/blob/1.10/urllib3/contrib/pyopenssl.py#L223 < / p>
我还测试了多个文件的上传内容:
您是否知道可能存在的问题和解决方案?