我正在寻找有关在 Django 中为 OAuth 编写两条腿提供程序的教程/示例/说明。
很难找到关于 OAuth 提供者的文档,关于两条腿的系统更难找到...
最佳答案
我花了大约 3 天时间试图解决这个问题,并希望向任何可以使用它的人提供我最终从我试图查询的服务中获得的这个工作示例。结果非常容易。附言仅仅因为有人在使用 oauth 1.0 并不意味着您不能使用 oauth2 库。
要获取 auth2,请键入 pip install oauth2。
在你的脚本中,你需要:
import oauth2
import time
import urllib2
def build_request(url, method='GET'):
params = {
'oauth_version': "1.0",
'oauth_nonce': oauth2.generate_nonce(),
'oauth_timestamp': int(time.time())
}
consumer = oauth2.Consumer(key='python_test',secret='your_secret')
params['oauth_consumer_key'] = consumer.key
req = oauth2.Request(method=method, url=url, parameters=params)
signature_method = oauth2.SignatureMethod_HMAC_SHA1()
req.sign_request(signature_method, consumer, None)
return req
调用该函数并查看输出如下所示:
request = build_request('http://demo.echo360.com/ess/scheduleapi/v1/terms')
u = urllib2.urlopen(request.to_url())
print u.readlines()
关于django - 在 Django 中编写一个两足的 OAuth 提供程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6911298/