Python 烧瓶+;用于Twitter登录的Oauthlib:错误
我在virtualenv中使用Python3+Flask+OAuthlib来获取Twitter令牌和令牌密钥,以便开始使用我的应用程序 我正在复制托管在上的示例,只是替换了我的Flask应用程序的url 我还尝试在我的twitter应用程序设置中设置正确的回调url,或者使用Python 烧瓶+;用于Twitter登录的Oauthlib:错误,python,twitter,flask,twitter-oauth,flask-extensions,Python,Twitter,Flask,Twitter Oauth,Flask Extensions,我在virtualenv中使用Python3+Flask+OAuthlib来获取Twitter令牌和令牌密钥,以便开始使用我的应用程序 我正在复制托管在上的示例,只是替换了我的Flask应用程序的url 我还尝试在我的twitter应用程序设置中设置正确的回调url,或者使用login()函数所在的url,或者使用@twitter.authorized\u handler所在的url,但没有成功 我得到了这个错误: File "C:\Users\\pyws\flask_ws\flask_engi
login()
函数所在的url,或者使用@twitter.authorized\u handler
所在的url,但没有成功
我得到了这个错误:
File "C:\Users\\pyws\flask_ws\flask_engine\lib\site-packages\flask\app.py", line 1461, in dispatch_request return self.view_functions[rule.endpoint](**req.view_args)
File "C:\Users\\pyws\flask_ws\flask_engine\lib\site-packages\flask_oauthlib\client.py", line 587, in decorated data = self.handle_oauth1_response()
File "C:\Users\\pyws\flask_ws\flask_engine\lib\site-packages\flask_oauthlib\client.py", line 526, in handle_oauth1_response _encode(self.access_token_method)
File "C:\Users\\pyws\flask_ws\flask_engine\lib\site-packages\oauthlib\oauth1\rfc5849\__init__.py", line 273, in sign
elif http_method.upper() in ('GET', 'HEAD') and has_params: AttributeError: 'NoneType' object has no attribute 'upper'`
我不明白这个错误:/
提前感谢您通过查看oauthlib源代码提供的帮助,远程应用程序中似乎没有定义
access\u token\u方法
属性。文档中说它默认为“GET”
,但这在您的情况下似乎不起作用
尝试将其显式添加到您的远程应用程序()
定义中
twitter = oauth.remote_app(
'twitter',
consumer_key='xBeXxg9lyElUgwZT6AZ0A',
consumer_secret='aawnSpNTOVuDCjx7HMh6uSXetjNN8zWLpZwCEU4LBrk',
base_url='https://api.twitter.com/1.1/',
request_token_url='https://api.twitter.com/oauth/request_token',
access_token_url='https://api.twitter.com/oauth/access_token',
authorize_url='https://api.twitter.com/oauth/authenticate',
access_token_method = 'GET' # <--- add this line
)
twitter=oauth.remote\u应用程序(
“推特”,
消费者_key='xbexg9lyelugwzt6az0a',
消费者_secret='aawnSpNTOVuDCjx7HMh6uSXetjNN8zWLpZwCEU4LBrk',
基本url=https://api.twitter.com/1.1/',
请求\u令牌\u url=https://api.twitter.com/oauth/request_token',
访问\u令牌\u url=https://api.twitter.com/oauth/access_token',
授权https://api.twitter.com/oauth/authenticate',
access_token_method='GET'#谢谢miguel。我已经添加了您所说的代码行,现在一切都正常了!!为什么oauthlib文档和示例中没有指定?谢谢您为我节省了很多时间,我打赌这不是故意的,我们通常称之为bug;-)@lepture是的,miguel提供了修复。抱歉这么晚才回答!