我的所有Twitter POST请求都失败了。我已按照示例进行身份验证:
self.oauth = OAuth1Service(
name='twitter',
consumer_key=consumer_key,
consumer_secret=consumer_secret,
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/authorize',
base_url='https://api.twitter.com/1.1/'
)
self.session = self.oauth.get_session( (access_token_key, access_token_secret) )
然后尝试了这个POST请求:
self.session.post('/statuses/update.json', params={'status':"hi!"})
但得到了这个错误:
AttributeError:' NoneType'对象没有属性' items' GET请求所有工作正常。
我也试过使用auth_session:
self.oauth.get_auth_session(access_token_key, access_token_secret, method='POST')
但收到此错误:
KeyError:'解码器无法使用提供程序返回的数据处理oauth_token。可能需要不同的解码器。提供者返回:\ n \ n必须使用request_token \ n / oauth / access_token \ n \ n'
调用access_token方法
我把我的代码从rauth切换到了小鸟,一切都很完美,但我更愿意和rauth呆在一起。