Php 在Laravel 5.1中使用中间件时,类jwt auth不存在错误

Php 在Laravel 5.1中使用中间件时,类jwt auth不存在错误,php,laravel-5.1,jwt,Php,Laravel 5.1,Jwt,我遵循jwtauth的官方安装 现在,我的控制器中有一个中间件: $this->中间件('jwt-auth',['only'=>['postChange','postchose']) 我还将Tymon\JWTAuth\Providers\JWTAuthServiceProvider::class添加到config/app.php 但是,当我向API发出请求时,会收到以下错误消息: ReflectionException in Container.php line 737: Class jwt-a

我遵循jwtauth的官方安装

现在,我的控制器中有一个中间件:

$this->中间件('jwt-auth',['only'=>['postChange','postchose'])

我还将
Tymon\JWTAuth\Providers\JWTAuthServiceProvider::class
添加到
config/app.php

但是,当我向API发出请求时,会收到以下错误消息:

ReflectionException in Container.php line 737:
Class jwt-auth does not exist

任何帮助都将不胜感激。

我在使用中间件时遇到同样的问题,您必须在
app/Http/Kernel.php
$routeMiddleware
属性下注册它们:

protected $routeMiddleware = [
    ...
    'jwt.auth' => 'Tymon\JWTAuth\Middleware\GetUserFromToken',
    'jwt.refresh' => 'Tymon\JWTAuth\Middleware\RefreshToken',
];

我也遇到了同样的问题,结果发现路径开头需要“\”(与其他中间件条目类似):


这解决了我的问题(Laravel 5.1.4)

我一直面临类似的问题。 你必须准确地加上

protected $routeMiddleware = [
    .......
    'jwt.auth' => \Tymon\JWTAuth\Middleware\GetUserFromToken::class,
    'jwt.refresh' => \Tymon\JWTAuth\Middleware\RefreshToken::class,
];
记住开头的“\”


Laravel 5.2

我已经注册了。您是使用jwt.auth还是jwt auth作为middleware@digitlimit我正在使用jwt.auth作为中间件。谢谢。官方文档似乎信息不多。您是否运行PHPUnit测试?我试图通过在测试中使用令牌发出请求,获取errorsRemember以放置这些单引号(')。它们非常重要。在拉维8中也有效
protected $routeMiddleware = [
    .......
    'jwt.auth' => \Tymon\JWTAuth\Middleware\GetUserFromToken::class,
    'jwt.refresh' => \Tymon\JWTAuth\Middleware\RefreshToken::class,
];