0 レビュー
3 回答
php-LaravelCSRF値が空
laravelWebアプリにメタタグとしてcsrfを追加しようとしています-
<meta name="csrf-token" content="{{ csrf_token() }}">
しかし、閲覧すると値が空になります-
<meta name="csrf-token" content="">
ログインフォームにも追加してみました- {!! csrf_filed() !!}
または
<input type="hidden" name="_token" value="{{ csrf_token() }}">
ただし、どちらの場合も値はnullです。 フロントエンドでAngularjsを使用していますが、それと何か関係がありますか?
わからない
0
レビュー
答え :
解決策:
ルートをルートグループ「ミドルウェア」内に配置します:
Route::group(['middleware' => ['web']], function () {
// your routes here
});
そしてこれを実行します:
php artisan key:generate
わからない
0
レビュー
答え :
解決策:
404
ページを表示している場合は、 csrf_token
でも空の値を取得します。これは通常、ログアウトアクションを実行しようとしていて、フォームが header.blade.php
にあり、 404
ページにアクセスしている場合に発生します。インデックスページに戻って、 csrf_token
がまだ空かどうかを確認してください。
わからない
0
レビュー
答え :
解決策:
私は、セッションを手動でフラッシュすることで、期限切れのページを処理しようとしていました。コントローラからセッションをフラッシュしてhtmlフォームを調べると、空の_token値が取得され、セッションフラッシュコードがコントローラから削除されると正常に機能していました。また、ドキュメントには、アクティブユーザーに対してcsrfが生成され、セッションが期限切れまたはフラッシュされると、空の値が生成されると記載されています。一部のオタクにとっては、上記の回答で述べたようにミドルウェアWebを使用しない場合もあります。
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。