我想知道Django始終拋出的CSRF Cookie not set
錯誤是怎麼回事。我創建了一個視圖(參見下面),這是一個付款回調。我對發送給這個觀點的內容沒有影響。我已經檢查了StackOverflow上的其他帖子,但我認爲不適用於我。他們中的大多數人可以在他們的表單中實施csrf保護,csrf_exempt他們的視圖,或者他們使用rest_framework。現在Django禁止(CSRF cookie未設置)
class PaymentWebhook(View):
def post(self, request, *args, **kwargs):
# ...
,我得到這個錯誤每次當我什麼都不做這樣的功能:
Forbidden (CSRF cookie not set.): /payment/webhook
因爲這是有關付款,我能csrf_exempt
這一點,或將只是打開一個安全孔?順便說一下,我甚至試着對這個函數進行免除,但它仍然會拋出這個錯誤。 有什麼建議嗎?
顯示您的HTML包含提交這種觀點的形式。可能你沒有在這個表單中設置* {%csrf_token%}'。 –
@nik_m就是這樣,這個觀點並沒有被我的任何形式發佈。付款提供商發送此郵件以返回付款信息 – dnsko
然後,您應該使用['csrf_exempt'](https://docs.djangoproject.com/en/1.10/ref/csrf/#django.views.decorators.csrf .csrf_exempt)裝飾器,沒有任何安全漏洞。 –