Laravel/PHP:类 cors 不存在

发布时间:2021-02-25 06:58

我的某些 api 调用有问题。我能够通过使用 laravel cors by fruitcake -

绕过这个最初的问题 <块引用>

对预检请求的响应未通过访问控制检查

但问题并没有就此停止,一些 api 调用抛出了这个错误

<块引用>

"error":"类 cors 不存在","debug":{"code":-1,"line":767,"trace":[{"file":"/home/xxxxxx/Workspace /xxxxxx/vendor/laravel/framework/src/Illuminate/Container/Container.php","line":767...]}

我能够按照 fruitcake/laravel-cors 中的说明进行操作,包括将其添加到 kernel.php、创建 config/cors.php 并将路径设置为 'paths' => ['api/*'], 并最终将其添加到我的路由中:< /p>

Route::group(['middleware' => 'cors'], function() {
    Route::middleware('auth:api')->namespace('Api')->group(function () {

     
        Route::middleware('admin')->prefix('admin')->namespace('Admin')->group(function() {
            Route::get('dashboard/statistics', 'DashboardController@index');

...

我使用的是旧版本的 Laravel (5.6) 和 PHP 7.4。将不胜感激!

当我在新选项卡上打开端点时,出现错误:

Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException No message

回答1

HandleCors 类添加到 config/app.php 别名部分,如下所示。

'cors' => \Fruitcake\Cors\HandleCors::class,
回答2

您是否在将 composer dump-autoload 添加到 HandleCors 后运行了 config/app.php 命令?

回答3

我删除了路由器上的中间件

Route::group(['middleware' => 'cors'], function() {
    Route::middleware('auth:api')->namespace('Api')->group(function () {

 
        Route::middleware('admin')->prefix('admin')->namespace('Admin')->group(function() {
            Route::get('dashboard/statistics', 'DashboardController@index');

...

只是

Route::middleware('admin')->prefix('admin')->namespace('Admin')->group(function() {
    Route::get('dashboard/statistics', 'DashboardController@index');