Laravelde ajax gönderirken _token hatası alıyorum. Ajax da _token gönderme işlemi nasıl oluyor. Sizler ajax gönderme işlememini nasıl yapıyorsunuz ?
Ajax göndermenin birden fazla yolu var.
1. Yöntem
var url='{{route('name')}}'; //Ajax atılacak link yolu
var method=''; //GET, POST
var data={_token: '{{csrf_token()}}', name: 'değer1'}; //Fonksiyonda ihtiyacın olan veriler
$.ajax({
url: url,
type: method,
data: data
}).done(function (responseData, status, xhr) {
//başarılı
}).fail(function (xhr, status, err) {
//başarısız
});
2. Yöntem
Post için
var url='{{route('name')}}'; //Ajax atılacak link yolu
var data={_token: '{{csrf_token()}}', name: 'değer1'}; //Fonksiyonda ihtiyacın olan veriler
$.post(url, data ,function(result){
console.log(result);
});
Get için
var url='{{route('name')}}'; //Ajax atılacak link yolu
var data={_token: '{{csrf_token()}}', name: 'değer1'}; //Fonksiyonda ihtiyacın olan veriler
$.get(url, data ,function(result){
console.log(result);
});
Her data değerlerini formun içinden alıcaksan datanı şu şekilde düzenlemelisin.
var data = $('#form1').serializeArray();
data.push({name: 'degisken_adi1', value: 'degisken_degeri1'},{name: 'degisken_adi2', value: 'degisken_degeri2'});
Eğer bir sayfada birden fazla ajax çalıştırıp, _token değerini aşağıdaki kod ile tüm isteklere ekleyebilirsin.
Kaynak: https://laravel.com/docs/5.6/csrf#csrf-x-csrf-token
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': {{ csrf_token() }}
}
});