第三方重定向后,Django request.user 成为 AnonymousUser

测试.html:


<a href="https://auth.ebay.com/oauth2/authorize?    ...">authorize</a>

视图.py:


from django.contrib.auth.decorators import login_required


@login_required

def myview(req):

    user = req.user


   return render(req, 'test.html')

对于 ebay 的 oauth 流程,您必须向用户提供指向 ebay 服务器的链接,该链接会询问用户是否要向您提供凭据。如果他们接受,ebay 会将用户重定向到给定的 url,其中包含访问密钥的查询字符串。


问题是,当我使用 ebay 授权我的应用程序时,用户会被重定向到我的登录页面(尽管已经登录)。如果我删除@login_required装饰器,则req.user返回 AnonymousUser。这是一个问题,因为我不知道将访问令牌分配给哪个用户。


我在这里想念什么?


请注意,我正在使用 ngrok 来隧道我的服务器,除了用户是匿名的事实之外,我没有

呈现任何问题。myview


蛊毒传说
浏览 157回答 1
1回答

BIG阳

问题是当我最初登录用户时,我使用的是域localhost:8000而不是我的 ngrok 实例。使用我的 ngrok 地址登录我的用户解决了这个问题。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python