Hago una llamada ajax pero sigo recibiendo este error:
419 (estado desconocido)
No tengo idea de qué está causando esto. Vi en otras publicaciones que tiene que ver con token csrf, pero no tengo forma, así que no sé cómo solucionarlo.
mi llamada:
$('.company-selector li > a').click(function(e) {
e.preventDefault();
var companyId = $(this).data("company-id");
$.ajax({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
url: '/fetch-company/' + companyId,
dataType : 'json',
type: 'POST',
data: {},
contentType: false,
processData: false,
success:function(response) {
console.log(response);
}
});
});
Mi ruta:
Route::post('fetch-company/{companyId}', 'HomeController@fetchCompany');
Mi método controlador
/**
* Fetches a company
*
* @param $companyId
*
* @return array
*/
public function fetchCompany($companyId)
{
$company = Company::where('id', $companyId)->first();
return response()->json($company);
}
El objetivo final es mostrar algo de la respuesta en un elemento html.
{{csrf_field()}}
en tu formulario ??
{'_token': {{csrf_token()}}}
<meta name="csrf-token" content="{{ csrf_token() }}">