在 laravel 5.6 中无法使用邮递员使用 api 路由

Posted

技术标签:

【中文标题】在 laravel 5.6 中无法使用邮递员使用 api 路由【英文标题】:Not working api route in laravel 5.6 with postman 【发布时间】:2018-12-26 11:42:28 【问题描述】:

我在 laravel 中测试护照时遇到问题,当 postman 中的 testo 给我一个错误时。

"message": "",
    "exception": "Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException",
    "file": "/data/www/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php",
    "line": 179,

路由/api.php

Route::group([
    'prefix'        => 'api',
    'middleware'    => ['auth.api']
], function () 
    Route::post('details', 'API\UserController@details');
);

用户控制器.php

    public function details()

    dd("Ijdsijds");
    $user = Auth::user();
    return response()->json(['success' => $user], $this->successStatus);

kernel.php

   protected $middlewareGroups = [
        'web' => [
            \App\Http\Middleware\EncryptCookies::class,
            \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
            \Illuminate\Session\Middleware\StartSession::class,
            // \Illuminate\Session\Middleware\AuthenticateSession::class,
            \Illuminate\View\Middleware\ShareErrorsFromSession::class,
            \App\Http\Middleware\VerifyCsrfToken::class,
            \Illuminate\Routing\Middleware\SubstituteBindings::class,
        ],

        'api' => [
            'throttle:60,1',
            'bindings',
            'cors' => [
                \Barryvdh\Cors\HandleCors::class,
            ]
        ],
    ];

验证CRFSToken.php

protected $except = [
        //'authenticate'
        '/api/*'
    ];

我哪里错了?路线在 route: list 中列出

【问题讨论】:

你的邮递员发送到什么路线? 你已经放置了一个中间件'middleware' => ['auth.api'],它有什么作用?您是否随请求一起发送任何 API 密钥(例如)? 您不应该真正将 dd 命令与邮递员一起使用,它是专为浏览器设计的。只需返回一个 json 或字符串。在已经设置好的 api.php 上编写路由时不需要 Api 前缀。这可能是你的问题。 【参考方案1】:

当您使用routes/api.php 时,它是无状态的,因此您不会获得任何会话值(此处为Auth)。

要获得价值,请使用Passport Helpful link

或使用JWT

【讨论】:

我已经在使用护照,我正在通过邮递员测试 api,它返回了这个错误,我已经在这里尝试了一切

以上是关于在 laravel 5.6 中无法使用邮递员使用 api 路由的主要内容,如果未能解决你的问题,请参考以下文章

FatalThrowableError:参数 1 已通过 ..::fromUser() laravel 5.6

Laravel 发布请求无法与邮递员一起使用

Laravel/000webhost/邮递员。无法得到任何回应

Laravel Sanctum 无法使用 Postman 登录

在邮递员中不断出错,如下所示?无法得到任何回应

Laravel 5.6 空字段验证