php - Laravel (v5.7) Passport (v7.0) 在尝试打开 auth api 路由时将我重定向到登录屏幕
问题描述
我读过这个问题:Laravel Passport Route redirects to login page,它对我不起作用。我正在使用Accept: application/json
and发送请求Authorization: Bearer [access-token]
,但我被重定向到我的应用程序的登录屏幕。这是我正在尝试的路线https://passportdemo.test/api/products
,这是我的 api 路线文件
Route::post('register', 'API\RegisterController@register');
Route::middleware('auth:api')->group( function () {
Route::resource('products', 'API\ProductController');
});
我能够注册一个新用户并毫无问题地登录一个用户,但是当我尝试使用产品路由时,我被重定向到登录屏幕。我还试图看看会dd($request->expectsJson());
从什么返回namespace Illuminate\Foundation\Exceptions@unauthenticated
,它正在返回false
,这很奇怪吗?我认为它应该返回 true。我正在使用 nginx 服务器,所以 .htaccess 的技巧我认为它不适合我,我也尝试protected static $serialize = true;
在类中添加Illuminate\Cookie\Middleware\EncryptCookies
,但这对我也有用。有人可以帮助我吗?
解决方案
一个菜鸟的错误。事实证明,使用 Postman 或 Insomnia 发送请求需要使用 Auth 选项卡而不是从数据/表单点击(我正在使用)完成。
- 对于 Postman,只需转到 Authorization 并选择 Bearer token 并粘贴令牌并在 Params 选项卡中填写任何数据(如果需要)
- 对于 Insomnia,只需单击 Bearer 令牌并粘贴您的令牌,然后在 Multipart 中(如果您有一些表单数据粘贴/写入)
瞧!
经过3天的研究是什么问题!
推荐阅读
- reactjs - AWS Serverless:在一个域下配置多个前端应用程序
- google-cloud-platform - 谷歌云任务消失
- javascript - 无法访问数组中的一项,但我可以访问整个数组
- python - Django post save 信号不更新数据库
- python - 如何将此数据集拆分为训练集和验证集?
- python - 为什么我得到两个变量的 id 对于整数但不是浮点数?
- asp.net-core - ASP.NET Core 从 HTTP 重定向到 HTTPS 问题
- c# - 如何在 ASP.NET C# 中删除 cookie 并检查同一请求中 cookie 的状态
- android-room - 防止多个表更改时多次触发 Room Observable 查询
- docker - 如何将环境变量传递到 Jenkins 的 docker 容器中?