【发布时间】:2011-12-07 22:15:10
【问题描述】:
我正在尝试设置此 Twitter 授权,而无需用户在我们的屏幕中输入 PIN,但我无法正确设置我总是被指示输入 PIN。尝试使用和关注这个包https://github.com/simplegeo/python-oauth2
这是我当前的代码
env = Environment(loader = PackageLoader('buzzient','tmpl'))
template = env.get_template('authtwitter.html')
tmpldict = {}
#SETUP TWITTER AUTHORIZATION OBJECT
consumer_key = '######################'
consumer_secret = '##############################'
request_token_url = 'http://twitter.com/oauth/request_token'
access_token_url = 'http://twitter.com/oauth/access_token'
authorize_url = 'http://twitter.com/oauth/authenticate'
consumer = oauth.Consumer(consumer_key, consumer_secret)
client = oauth.Client(consumer)
#get request token
resp, content = client.request(request_token_url, "GET")
if resp['status'] != '200':
raise Exception("Invalid Response %s." %resp['status'])
request_token = dict(urlparse.parse_qsl(content))
tmpldict['twitauthurl'] = "%s?oauth_token=%s" % ( authorize_url, request_token['oauth_token'] )
qargs=buzzientlib.urlparse_qs(self.request.url,True,False)
t = template.render(tmpldict)
self.response_body = str(t)
模板只包含一个指向 twitauthurl 的链接
【问题讨论】:
-
这是 Web 应用程序还是桌面应用程序?如果是台式机,您要么需要接受带外 PIN 授权,要么实施一种方法来处理回调 URL。
标签: python twitter oauth twitter-oauth