我正在设置一个 API。一切正常。我正在通过 OAuth2 python lib 创建一个令牌。我正在为我的 API 使用 TastyPie。
我面临的问题..是 AccessToken 或 Client 模型中没有“创建”令牌方法。
我可以通过 Django 管理员创建一个 accessToken,我可以通过 curl 来创建一个:
myhost.com/oauth2/access_token(包含所有信息、密钥、客户端 ID、用户和密码)
我的目标是在使用我的 API 成功注册用户后,自动创建(工作)oAuth 客户端,但我还想生成 AccessToken。我不能卷曲我自己的服务器,因为它给了我一个重定向/连接被拒绝的错误,所以我想在 Python 中以编程方式进行。无论如何要这样做?这是一个片段:
try:
user = User.objects.create_user(username, password)
user.save()
if user:
oauth_client = Client(user=user, name="api account", client_type=1, url="http://example.com")
oauth_client.save()
oauth_client_id = oauth_client.pk
oauth_client_secret = oauth_client.client_secret
if oauth_client:
print user
print oauth_client_id
print AccessToken.objects.all()
print '........'
token = AccessToken(user=user, client=oauth_client_id, scope=6)
token.save()
上面的最后两行,虽然没有给出错误.. 不会保存新的 AccessToken。