,因为我更新到了Django Facebook的最新版本,所以我会收到此错误:
TypeError at /facebook/connect/
open() got an unexpected keyword argument 'timeout'
这是完整的回顾:
File "/usr/lib/python2.5/site-packages/django/core/handlers/base.py" in get_response
111. response = callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python2.5/site-packages/django/views/decorators/csrf.py" in wrapped_view
77. return view_func(*args, **kwargs)
File "/usr/lib/python2.5/site-packages/django_facebook/decorators.py" in _wrapped_view
92. get_persistent_graph(request, redirect_uri=current_uri)
File "/usr/lib/python2.5/site-packages/django_facebook/api.py" in get_persistent_graph
62. graph = get_facebook_graph(request, *args, **kwargs)
File "/usr/lib/python2.5/site-packages/django_facebook/api.py" in get_facebook_graph
161. code, redirect_uri=redirect_uri)
File "/usr/lib/python2.5/site-packages/open_facebook/api.py" in convert_code
251. response = cls.request('oauth/access_token', **kwargs)
File "/usr/lib/python2.5/site-packages/open_facebook/api.py" in request
75. response = cls._request(url, post_data)
File "/usr/lib/python2.5/site-packages/open_facebook/api.py" in _request
110. timeout=timeout)
Exception Type: TypeError at /facebook/connect/
Exception Value: open() got an unexpected keyword argument 'timeout'
我已经通过从此处删除超时参数来"修复"此操作:
/usr/lib/python2.5/site-packages/open_facebook/api.py
超时param就在评论下方,说此参数可以用于较旧的python版本。
认为您应该尝试升级所使用的python版本(或者更好,请使用virtualenv!)
看起来您正在使用python 2.5,它很旧,所以也许您会遇到错误
来自 https://github.com/tschellenbach/Django-facebook/blob/master/open_facebook/api.py#L92
的
,看起来像是在urllib2.openerdirector上呼叫open(),所以可能在某个时候添加了超时关键字arg ^