为什么pypi上传的POST请求数据中包含\r\n?
Why does pypi upload include \r\n in POST request data?
我最近将 Mac 升级到了 El Capitan。升级后,当我 运行 "python setup.py upload"
时,我开始看到奇怪的行为
上传命令生成的 POST 请求现在将 \r\n 插入每个数据字段。
它不会导致上传到 python.org/pypi/ 的任何问题,但我使用的是 djangopypi (github.com/benliles/djangopypi/) 并且该库会执行字符串比较 post 请求数据。我已经向我的 djangopypi 实例推送了一个补丁,它只删除了 POST 请求数据,但我仍然不明白为什么我的 OS 会添加这些字符?
这是服务器端 post 数据的示例。
{u'comment': [u'\r\n\r'],
u'license': [u'\r\nUNKNOWN\r'],
u'protcol_version': [u'\r\n1\r'],
u'metadata_version': [u'\r\n1.0\r'],
u'author': [u'\r\nMe\r'],
u'home_page': [u'\r\nhttp://me@sample.com\r'],
u'md5_digest': [u'\r\nesdfg2345f361b982345sdfg9952a\r'],
u'filetype': [u'\r\nsdist\r'],
u':action': [u'\r\nfile_upload\r'],
u'download_url': [u'\r\nUNKNOWN\r'],
u'name': [u'\r\nsample.app\r'],
u'platform': [u'\r\nUNKNOWN\r'],
u'version': [u'\r\n2.0\r'],
u'pyversion': [u'\r\n\r'],
u'keywords': [u'\r\ndjango sample\r'],
u'author_email': [u'\r\nme@sample.com\r'],
u'summary': [u'\r\nSample Summary\r'],}
我不知道如何从我的客户端来看待它,帮助也很有帮助。
我找到了根本原因。
Distutils 已于 2014 年 9 月更新
我最近将 Mac 升级到了 El Capitan。升级后,当我 运行 "python setup.py upload"
时,我开始看到奇怪的行为上传命令生成的 POST 请求现在将 \r\n 插入每个数据字段。
它不会导致上传到 python.org/pypi/ 的任何问题,但我使用的是 djangopypi (github.com/benliles/djangopypi/) 并且该库会执行字符串比较 post 请求数据。我已经向我的 djangopypi 实例推送了一个补丁,它只删除了 POST 请求数据,但我仍然不明白为什么我的 OS 会添加这些字符?
这是服务器端 post 数据的示例。
{u'comment': [u'\r\n\r'],
u'license': [u'\r\nUNKNOWN\r'],
u'protcol_version': [u'\r\n1\r'],
u'metadata_version': [u'\r\n1.0\r'],
u'author': [u'\r\nMe\r'],
u'home_page': [u'\r\nhttp://me@sample.com\r'],
u'md5_digest': [u'\r\nesdfg2345f361b982345sdfg9952a\r'],
u'filetype': [u'\r\nsdist\r'],
u':action': [u'\r\nfile_upload\r'],
u'download_url': [u'\r\nUNKNOWN\r'],
u'name': [u'\r\nsample.app\r'],
u'platform': [u'\r\nUNKNOWN\r'],
u'version': [u'\r\n2.0\r'],
u'pyversion': [u'\r\n\r'],
u'keywords': [u'\r\ndjango sample\r'],
u'author_email': [u'\r\nme@sample.com\r'],
u'summary': [u'\r\nSample Summary\r'],}
我不知道如何从我的客户端来看待它,帮助也很有帮助。
我找到了根本原因。
Distutils 已于 2014 年 9 月更新