Django 1.9:使用 Stripe 时 CSRF 令牌丢失或不正确
Django 1.9: CSRF token missing or incorrect using Stripe
这可能是重复的,但我尝试使用其他答案中的 RequestContext
,但它对我不起作用
checkout_test.html:
<form action="" method="POST"> {% csrf_token %}
<script src="https://checkout.stripe.com/checkout.js" class="stripe-button"
data-key="pk_test_37uDrOYvvyyJSLoV0ziJcYyl"
data-amount="2000"
data-name="Demo Site"
data-description="2 widgets (.00)"
data-image="/128x128.png"
data-locale="auto">
</script>
</form>
views.py
def user_review_list(request, username=None, errmsg=None):
return render(request, 'checkout_test.html', {})
所以在user_review_list.html
中,有一个stripe提供的按钮
当我填写信息并单击按钮时,它会引发错误:
CSRF token missing or incorrect.
我该如何解决这个问题?
我已经尝试用 RequestContext
将 render
更改为 render_to_response
,但是没有用
您不能将您的 CSRF cookie 传递给 Stripe 并返回。一种解决方法是使用 @csrf_exempt
装饰器:
from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
def user_review_list(request, username=None, errmsg=None):
...
这可能是重复的,但我尝试使用其他答案中的 RequestContext
,但它对我不起作用
checkout_test.html:
<form action="" method="POST"> {% csrf_token %}
<script src="https://checkout.stripe.com/checkout.js" class="stripe-button"
data-key="pk_test_37uDrOYvvyyJSLoV0ziJcYyl"
data-amount="2000"
data-name="Demo Site"
data-description="2 widgets (.00)"
data-image="/128x128.png"
data-locale="auto">
</script>
</form>
views.py
def user_review_list(request, username=None, errmsg=None):
return render(request, 'checkout_test.html', {})
所以在user_review_list.html
中,有一个stripe提供的按钮
当我填写信息并单击按钮时,它会引发错误:
CSRF token missing or incorrect.
我该如何解决这个问题?
我已经尝试用 RequestContext
将 render
更改为 render_to_response
,但是没有用
您不能将您的 CSRF cookie 传递给 Stripe 并返回。一种解决方法是使用 @csrf_exempt
装饰器:
from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
def user_review_list(request, username=None, errmsg=None):
...