問題タブ [csrf-token]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - エラー: 419|ページの期限切れ (Laravel 6.0 -Mysql)
トークンをフォームに追加し@csrf
、ヘッダーのメタタグに追加しましたが、それでも同じエラーが発生します。登録すると機能し、ホームページにリダイレクトされます。それは問題ありませんが、資格情報は問題ありませんが、ログインしてもホームページにリダイレクトされません。
Login.blade.php
WEB.PHP
LoginController.php
haskell - Yesod 非 AJAX HTML フォーム CSRF トークン
Yesod で CSRF 保護ミドルウェアを有効にしました。
私のjQuery AJAX呼び出しは機能しており、通常の足場に従ってCSRFトークンがヘッダーに追加されています。
これで、 Yesod によって生成されたものではない、通常の HTML "POST" フォームができました。CSRF 保護トークンを非表示の入力として含めたい。
これまでのところ、私はこれを持っていますExampleHandler.hs
( Yesod 1.2 CSRF 保護の Snoymaster に感謝します)
そしてでexample.hamlet
:
この1つのフォームが機能します。
ハンドラーがたくさんあるので、トークンを取得するために、すべてのハンドラーにコード (または関数) を貼り付けたくありません。また、すべての HTML フォームを AJAX に変換したくありません。
上記のトークン取得スニペットを に貼り付けて、Foundation.hs
どこでもトークンを取得しようとしましたが、次のようになります。
example.hamlet
が引き込まれるハンドラーの行。
csrftoken
すべてのハンドラーでスコープ内の変数を取得するにはどうすればよいですか?
生成されていない HTML フォームに CSRF トークンを取得するより良い方法はありますか?
Haskeller と Yesod ファンに感謝します
php - laravel 6.2でデータテーブルでajaxを使用するとCSRFトークンが一致しません
データ テーブルのデータから CSV、Excel、PDF ファイルを生成しようとしています。
私のコードは次のとおりです-
web.php で
In ExpenseController
そして、最後に script タグで
ページをロードするたびにCSRF
、トークンが正しい場合でも、トークンが一致しないというエラーが発生します。
何をすべきですか?
laravel - Cookie と html での CSRF トークンの不一致
CSRFトークンを「適切に」取得するにはどうすればよいですか?
Axios を使用して Vue SPA にログインしようとしています。
Auth::routes();
によって生成されたルートを除いて、すべてを Vue コンポーネントに変更しましたphp artisan ui:auth
。したがって、フォームで使用できなくなり@csrf
、axios のヘッダーを介して csrf トークンを送信する必要があります。Laravel によって Cookie に与えられた XSRF TOKEN が HTML で取得したものと異なることに気付くまで、ほぼすべてを 2 日間試しました...下の写真を参照してください。
これは開発者ツールから来ています。
app.blade.php
これを追加したので、CSRFトークンを取得してaxiosヘッダーに添付できます。
console.log() を実行すると、別のトークンが表示されます。
console.log() のときに取得するトークン:o3nQRW6IqiKdNGOdiHc59pYXXD3sBw8YfbpCPvf7
Cookie から CSRF トークンを取得してから ? を使用しないのはなぜdocument.cookie
ですか?、同じことです。console.log() するたびに一致しません。
これが間違いなく、私が何をしても、常に 419 エラー CSRF トークンの不一致が発生する理由です。何が原因でしょうか?
注:ファイル内でのみ使用しAuth::routes()
ていapi.php
ます。には何もありませんweb.php
。奇妙なことに、一度ユーザーを登録できましたが、同じ問題が原因で二度と登録できませんでした。