Traté de usar Ajax de laravel, pero no pude encontrarlo.
¿Cómo usar ajax en Laravel?
en el archivo main.js...
$.ajax({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') }, url : "{{ route('saveToken') }}", data : {'token' : token}, type : 'POST', dataType : 'json', success : function(result){ console.log("===== " + result + " ====="); } });en plantilla de hoja...
<body> <meta name="csrf-token" content="{{ csrf_token() }}"> <div class="wrapper"> @yield('content') <script src="{{ asset('assets/js/main.js') }}"></script> </div> </body>archivo php
//web.php Route::get('/saveToken', [FcmController::class, 'saveToken']); // Fcm controller public function saveToken(Request $request) { ...sobre el uso de la URL de ajax //"{{ ruta ('saveToken') }}"
~~~/%7B%7B%20route('saveToken')%20%7D%7D 404 not found// '/guardarToken'
405 not allowedEstá llamando al nombre de la ruta en la url, por lo que debe agregar el nombre de la ruta en la ruta.
Route::get('/saveToken', [FcmController::class, 'saveToken']);Reemplazar con
Route::post('/saveToken', [FcmController::class, 'saveToken'])->name('saveToken');Reemplaza tu ruta
Route::post('/saveToken', [FcmController::class, 'saveToken'])->name('saveToken');
O
cambia tu ajax
$.ajax({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') }, url : "{{ url('saveToken') }}", data : {'token' : token}, type : 'GET', dataType : 'json', success : function(result){ console.log("===== " + result + " ====="); } });