所以我的理解是这个错误来自于试图打电话
当用户未登录时request.user
。我遇到的问题是,我正在使用Stripe Connect Express,因此我可以让用户使用借记卡或银行帐户注册我的市场应用中的付款。这会将用户重定向到几页的条带。当Stripe收集它需要的数据时,它会将用户重定向回我的页面,我使用request.user
从数据库中提取信息,这样我就可以将Stripe数据保存到他们的表中。
我说大约50%的时间是成功的,另一半是我得到的错误
TypeError at /pricing/
'AnonymousUser' object is not iterable
这让我相信用户在重定向到Stripe的过程中会被注销。这个问题有解决方案吗?我的会话到期了吗? CSRF令牌是否发生了变化?
此外,Stripe允许您将POST请求中的“状态”查询参数传递给他们,他们建议将其用于CSRF令牌等事项。然后,他们在从服务器发送的重定向GET请求中将此“状态”返回给您。我可以将此信息用于解决我的问题吗?
答案 0 :(得分:1)
我想我找到了答案here。我最初将我的重定向uri列在Stripe上作为127.0.0.1 ...但我一直在localhost中开发,假设它只是抽象了前面提到的 - 但显然它可能已经创建了2个不同的cookie。到目前为止已经通过了一堆测试用例,似乎已经修复了它。