سعید محمدی
2 سال پیش توسط سعید محمدی مطرح شد
1 پاسخ

لاراول هنگام درخواست axios میگه csrf توکن صحیح نیست

سلام ازلاراول ورژن 9 و axios استفاده میکنم که توکن csrf و که در متا تگ هست و هنگام درخواست ها استفاده میکنه
هنگام ایجاد درخواست post به سمت سرور لاراول یه بار اخطار زیر و میده
"message": "Server Error"
گاهی هم اخطار زیر و میده
message: "CSRF token mismatch."
گاهی هم اصلا اخطار نمیده!!!!
واقعا کلافه ام کرده دیگه نمیدونم چی و تست کنم سمت سرورم توکن و بصورت زیر خروجی گرفتم

dd(csrf_token())

با سمت کلاینت که بصورت زیر میگیرم

document.querySelector('meta[name="csrf-token"]').getAttribute('content')

میبینم هر دو یه توکن مشابه و نشون میدن

در ضمن از Laragon با دامنه مجازی ssl دار تو سیستمم دارم استفاده میکنم

فایل کانفیگ session هم بصورت زیر هست

<?php
use Illuminate\Support\Str;

return [
    'driver' => env('SESSION_DRIVER', 'file'),
    'lifetime' => env('SESSION_LIFETIME', 10080),
    'expire_on_close' => false,
    'encrypt' => false,
    'files' => storage_path('framework/sessions'),
    'connection' => env('SESSION_CONNECTION'),
    'table' => 'sessions',
    'store' => env('SESSION_STORE'),
    'lottery' => [2, 100],
    'cookie' => env(
        'SESSION_COOKIE',
        Str::slug(env('APP_NAME', 'laravel'), '_').'_session'
    ),
    'path' => '/',
    'domain' => env('SESSION_DOMAIN'),
    'secure' => env('SESSION_SECURE_COOKIE',true),
    'http_only' => true,
    'same_site' => 'none',
];

ممنون میشم از دوستانی که میتونن کمکم کنند راهنمایی کنن تا این مشکل و حل کنم

سپاس

@ali.bayat
@hesammousavi
@FullStack
@mrahmadi
@ossvahid
@mahdidv
@magicaldev1
@Arshiamohammadei
@endworld
@MahdiMashayekhi
@mhyeganeh
@Farzadameri
@endworld
@milad
@khanzadimahdi
@juza66


ثبت پرسش جدید
رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 2 سال پیش مطرح شد
0

درود خوبی...
در هدر:

<meta name="csrf-token" content="{{ csrf_token() }}" />

در اسکریپت:

<script type="text/javascript">
$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    }
});
</script>

و در data :

data: {
    "_token": "{{ csrf_token() }}",
    "id": id
}

پیوند زیر:

https://stackoverflow.com/questions/32738763/laravel-csrf-token-mismatch-for-ajax-post-request

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام