Tengo el siguiente problema:
Estoy usando Laravel como backend de API para algunas aplicaciones. Para esto instalé "fruitcake/laravel-cors":"^2.0", y lo configuré de la siguiente manera:
config/cors.php
'paths' => ['api/*', 'sanctum/csrf-cookie', 'login', 'logout', '/','*'], 'allowed_methods' => ['*'], 'allowed_origins' => ['*'], 'allowed_origins_patterns' => ['*'], 'allowed_headers' => ['*'], 'exposed_headers' => [], 'max_age' => 0, 'supports_credentials' => true,Además tengo el siguiente .htaccess
Header always set Access-Control-Allow-Origin "*". Header always set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT, PATCH". Header always set Access-Control-Allow-Headers "*". RewriteEngine On RewriteCond %{REQUEST_METHOD} OPTIONS RewriteRule ^(.*)$ $1 [R=200,L]Mi problema ahora es que todo funciona bien hasta que quiero llamar a la siguiente ruta:
https://api.example.com/api/userY solo cuando quiero acceder al controlador de USUARIO recibo estos errores:
has been blocked by CORS policy: Response to preflight request does not pass access control check: It does not have HTTP ok status. Así es como se ven las rutas en routes/api.php :
Route::group(['middleware' => 'auth:api'], function () { // lot more routes here Route::patch('/user/setting', [UserController::class, 'updateUserSetting']); Route::post('/user/setting', [UserController::class, 'setUserSetting']); });Pero realmente solo con estas dos rutas, todas las demás van. Simplemente no lo entiendo.