我已经关注https://github.com/barryvdh/laravel-cors在我的应用程序上启用CORS。
当我刷新页面(REST端点)时,我收到以下消息: -
Class cors does not exist
我运行了以下命令: -
composer require barryvdh/laravel-cors 0.7.x
并在我的composer.json中有以下行
"barryvdh/laravel-cors": "0.7.x"
routes.php文件
Route::group(['middleware' => 'cors'], function($router){
$router->get('names/{id}', 'NameController@showEmpDetail');
$router->resource('names', 'NameController');
});
我猜这个地方我需要调用包,比如使用包等等。但是我找不到任何结果来帮助我。
请帮忙。
谢谢
尝试添加
'cors' => \Barryvdh\Cors\Middleware\HandleCors::class,
至
/app/Http/Kernel.php $routeMiddleware
https://github.com/barryvdh/laravel-cors的readme.md缺少Laravel 5的几个步骤。以下是完整的说明:
composer require barryvdh/laravel-cors 0.7.x
php artisan vendor:publish --provider="Barryvdh\Cors\ServiceProvider"
或复制vendor/barryvdh/laravel-cors/config/cors.php
到config/cors.php
Barryvdh\Cors\ServiceProvider::class
'cors' => \Barryvdh\Cors\Middleware\HandleCors::class
php artisan cache:clear
(现在,cors中间件将适用于您的路由:
Route::group(['middleware' => 'cors'], function(Router $router){
$router->get('api', 'ApiController@index'); // <- your route here
});
您需要在终端中运行此命令
php artisan vendor:publish --provider="Barryvdh\Cors\ServiceProvider"
更改app \ Providers \ RouteServiceProvider.php中的mapApiRoutes()方法,不要将'cors'放在前缀函数中,只需将'api'作为参数
protected function mapApiRoutes()
{
Route::prefix('api')
->middleware('api')
->namespace($this->namespace)
->group(base_path('routes/api.php'));
}