我正在运行 django example 提供的 python-social-auth ,并且收到以下 500 服务器错误。
ImportError at /login/bitbucket/
cannot import name SIGNATURE_HMAC
Request Method: GET
Request URL: http://localhost:8000/login/bitbucket/
Django Version: 1.4.4
Exception Type: ImportError
Exception Value:
cannot import name SIGNATURE_HMAC
Exception Location: /usr/local/lib/python2.7/dist-packages/requests_oauthlib/core.py in <module>, line 3
Python Executable: /usr/bin/python
Python Version: 2.7.3
我在 Google 和 StackOverflow 上四处搜索,找不到任何答案。我刚刚克隆了它,还没有更改任何代码。我已经安装了 hashlib 和 hmac 库
[编辑]
我升级了 oauthlib 和 requests_oauthlib 并且错误被一个新的替换了
AttributeError at /login/bitbucket/
'Request' object has no attribute 'body'
Request Method: GET
Request URL: http://localhost:8000/login/bitbucket/
Django Version: 1.4.4
Exception Type: AttributeError
Exception Value:
'Request' object has no attribute 'body'
Exception Location: /usr/local/lib/python2.7/dist-packages/requests_oauthlib/core.py in __call__, line 46
Python Executable: /usr/bin/python
Python Version: 2.7.3
最佳答案
仅供引用,我通过通过pip重新安装了oauthlib软件包解决了标题中的问题(来自Google)。
sudo pip install --upgrade oauthlib
由于这个问题,在升级oauthlib之后,我无法打开Ubuntu软件中心。