|
在Laravel中设置允许跨域(CORS,Cross-Origin Resource Sharing)通常可以通过安装和使用第三方包来完成,最常用的是`fruitcake/laravel-cors`包。以下是详细步骤: 1. 安装CORS包: 你可以使用Composer来安装`fruitcake/laravel-cors`包。在你的项目根目录下打开终端或命令提示符,并运行以下命令: ```bash composer require fruitcake/laravel-cors ``` 2. 发布配置文件: 安装完成后,你需要发布CORS包的配置文件。运行以下命令: ```bash php artisan vendor:publish --provider="Fruitcake\Cors\CorsServiceProvider" ``` 这将创建一个`cors`配置文件在`config`目录下。 3. 配置CORS: 打开`config/cors.php`文件,并根据你的需求进行配置。以下是一个基本的配置示例: ```php return [ /* |-------------------------------------------------------------------------- | Cross-Origin Resource Sharing (CORS) Configuration |-------------------------------------------------------------------------- | | Here you may configure your settings for cross-origin resource sharing | or "CORS". This determines what cross-origin operations may execute | in web browsers. You are free to adjust these settings as needed. | | To learn more: https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS | */ 'paths' => ['api/*', 'sanctum/csrf-cookie'], 'allowed_methods' => ['*'], 'allowed_origins' => ['*'], 'allowed_origins_patterns' => [], 'allowed_headers' => ['*'], 'exposed_headers' => [], 'max_age' => 0, 'supports_credentials' => false, ]; ``` 在这个配置文件中,你可以指定允许跨域的路径(`paths`)、方法(`allowed_methods`)、源(`allowed_origins`)等。将`allowed_origins`设置为`['*']`将允许所有源进行跨域请求。 4. 中间件应用: 确保`Cors`中间件被添加到你的应用中间件栈中。通常,这个中间件已经在`app/Http/Kernel.php`文件的`$middleware