Getting error: "Unauthenticated" with Laravel Passport
Getting error: "Unauthenticated" with Laravel Passport
我正在尝试创建一个使用 Laravel/Passport 作为 API 后端的单页应用程序。为了注册,我像往常一样创建我的用户,然后使用 Passport 的 ApiTokenCookieFactory 生成我的 JWT cookie,如下所示:
// api_success is a response macro
return $this->response->api_success('User successfully created')
->withCookie($this->cookie->make($newUser->getModel()->getKey(), $request->header('X-CSRF-TOKEN')));
您可以假定 $this->cookie 是容器的已解析 cookie 工厂。这一切都很好,我得到了一个带有 JWT 的 laravel_token cookie。
当我去提出请求时,例如 api/users/me,我得到了这样的回应:
{
"error": "Unauthenticated."
}
我正在发送 CSRF 令牌,我正在将 X-Requested-With 设置为 XMLHttpRequest,cookie 随请求一起发送。
/api/users/me 路由有 api:auth 中间件,所以我不知道我做错了什么。如果有人有任何建议,他们将不胜感激 <3
我已经解决了我遇到的问题,如果以后有人来这里,请注意默认情况下 cookie 是不加密的!!确保将加密 cookies 中间件添加到您的路由,或手动加密 cookies。天哪,当我弄明白这一点时,我太高兴了。事实证明,护照警卫试图解密我未加密的 cookie,但默默地 (!!) 失败了。
我正在尝试创建一个使用 Laravel/Passport 作为 API 后端的单页应用程序。为了注册,我像往常一样创建我的用户,然后使用 Passport 的 ApiTokenCookieFactory 生成我的 JWT cookie,如下所示:
// api_success is a response macro
return $this->response->api_success('User successfully created')
->withCookie($this->cookie->make($newUser->getModel()->getKey(), $request->header('X-CSRF-TOKEN')));
您可以假定 $this->cookie 是容器的已解析 cookie 工厂。这一切都很好,我得到了一个带有 JWT 的 laravel_token cookie。
当我去提出请求时,例如 api/users/me,我得到了这样的回应:
{
"error": "Unauthenticated."
}
我正在发送 CSRF 令牌,我正在将 X-Requested-With 设置为 XMLHttpRequest,cookie 随请求一起发送。
/api/users/me 路由有 api:auth 中间件,所以我不知道我做错了什么。如果有人有任何建议,他们将不胜感激 <3
我已经解决了我遇到的问题,如果以后有人来这里,请注意默认情况下 cookie 是不加密的!!确保将加密 cookies 中间件添加到您的路由,或手动加密 cookies。天哪,当我弄明白这一点时,我太高兴了。事实证明,护照警卫试图解密我未加密的 cookie,但默默地 (!!) 失败了。