Django 2.1 Python 3.7 条纹-连接/快速
我正在使用Stripe和django创建支付系统。要设置用户帐户,我将用户发送到数据条,然后将其重定向回网站。我目前正在服务器127.0.0.1上进行开发。每当用户被重定向回时,他们在新的会话中都将其视为AnonymousUser
。
我看过一些other answers,他们指出,这是在创建2个cookie时发生的。例如。您从127.0.0.1开始,然后在localhost结束。我只是通过在localhost上开始,然后在localhost上结束为我解决了这个问题。但是,我似乎无法从127.0.0.1开始并以127.0.0.1结尾
我的重定向URI为'redirect_uri': f'http://127.0.0.1:8000/billing/oauth/callback'
,但是我被重定向回了导致两个cookie的本地主机。
有人知道为什么将127.0.0.1转换为localhost以及如何找回127.0.0.1吗?
class StripeEntryView(LoginRequiredMixin, TemplateView):
template_name = 'billing/stripe.html'
model = BillingProfile
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
billing_profile, billing_profile_created = BillingProfile.objects.new_or_get(self.request)
context['stripe_user_id'] = billing_profile.stripe_user_id
return context
class StripeAuthorizeView(View):
def get(self, request):
if not self.request.user.is_authenticated:
return HttpResponseRedirect(reverse('login'))
url = 'https://connect.stripe.com/express/oauth/authorize'
params = {
'redirect_uri': f'http://127.0.0.1:8000/billing/oauth/callback',
'client_id': STRIPE_CONNECT_CLIENT_ID,
'stripe_user[email]':self.request.user.email,
'requested_capabilities[]':'platform_payments',
}
url = f'{url}?{urllib.parse.urlencode(params)}'
return redirect(url)