私はcurlを使用してDjangoフォームの1つをテストしています。私が試した呼び出し(それぞれからのエラー、および読みやすさのための複数行にわたる):
(1):
curl
-d "{\"email\":\"test@test.com\"}"
--header "X-CSRFToken: [triple checked value from the source code of a page I already loaded from my Django app]"
--cookie "csrftoken=[same csrf value as above]"
http://127.0.0.1:8083/registrations/register/
(httpヘッダーとcsrftoken
Cookieを使用)結果として400エラーが発生し、データは返されません。
(2):
curl
-d "{a:1}"
--header "X-CSRFToken:[as above]"
--cookie "csrftoken=[as above];sessionid=[from header inspection in Chrome]"
http://127.0.0.1:8083/registrations/register/
((1)と同様ですが、ヘッダープロパティ宣言にスペースがなくsessionid
、Cookieにもスペースがありません)、データが返されない同じ400エラーが発生します。
(3):
curl
-d "{a:1}"
--header "X-CSRFToken:[as above]"
http://127.0.0.1:8083/registrations/register/
(CookieなしのhttpヘッダーのみX-CSRFToken
)エラーコード403が発生し、メッセージ:CSRFcookieが設定されていません。
フォームをcurlでテストするにはどうすればよいですか?Cookieの値とhttpヘッダー以外に考慮していない要素は何ですか?