JWT Token Expiry不一致

时间:2016-01-26 05:39:26

标签: php api laravel-5.1 jwt

我还是laravel,api以及JWT的新手。有没有人使用tymon jwt?

我一直在为Token Expiry烦恼。当它过期时,它会显示2种不同的错误。通常,它只是{message:" token_expired"},状态代码为401,这很好。但是,有时它会显示出这种错误,其中它表示它来自PayloadValidator,并且我无法陷入我可以触发它的位置。这对我来说是个问题,因为它的状态代码是500,我们的前端开发人员不想要状态代码500.

我想把它变成400,或者更确切地说只是有一致的错误响应这里有没有人可以帮助我理解为什么会出现2种错误?这些是怎么遇到的?

出现#1:返回"状态401未经授权"

{
    "error": "token_expired"
}

发生次数2:返回"状态500内部服务器错误"

{
    "message": "Token has expired",
    "status_code": 500,
    "debug": {
    "line": 74,
    "file": "C:\xampp\htdocs\laravel-project\vendor\tymon\jwt-auth\src\Validators\PayloadValidator.php",
    "class": "Tymon\JWTAuth\Exceptions\TokenExpiredException",
    "trace": [
    "#0 C:\xampp\htdocs\laravel-project\vendor\tymon\jwt-auth\src\Validators\PayloadValidator.php(32): Tymon\JWTAuth\Validators\PayloadValidator->validateTimestamps(Array)",
    ....
}

Inconsistent TokenExpiry Response

0 个答案:

没有答案