laravel - 作曲家更新后Laravel Passport未经身份验证
问题描述
我已经在这个应用程序中工作了几年,在进行一些更新时,我的护照认证失败了。我从护照 7.2 更新到 7.5,它坏了。然后我更新到护照8.5,它仍然无法正常工作。
我收到 401{error: "Unauthenticated."}
错误。
我在用
- Laravel 7.28.1
- 护照 8.5.0
- Laravel 代客
- PHP 7.3
我正在尝试使用我自己的 api,并且我遵循了我在互联网上找到的所有解决方案,但没有骰子。我可以使用带有访问令牌的邮递员访问路由,如果我将路由移到auth:api
中间件之外,但我想访问auth:api
这是我当前的配置。
AuthServiceProvider.php
public function boot()
{
Passport::routes();
}
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
... other middleware
\Laravel\Passport\Http\Middleware\CreateFreshApiToken::class,
],
'api' => [
'throttle:60,1',
'bindings',
],
];
在 auth.php
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'passport',
'provider' => 'users',
'hash' => false,
],
]
]
引导程序.js
window.axios = require('axios');
window.axios.defaults.headers.common = {
'X-CSRF-TOKEN' : document.querySelector('meta[name="csrf-token"]').getAttribute('content'),
'X-Requested-With': 'XMLHttpRequest'
};
在 component.vue 文件中
axios.get('/api/users?page=' + page).then((response) => {
//
})
我已经清除了配置并运行了 php artisan optimize:clear
大约十几个我现在无法处理的其他事情。
任何帮助,将不胜感激。
解决方案
从发布这个问题的时间(2020 年 9 月上旬)开始,我就在 Laravel 7 和 Passport 中遇到了这个问题。我无法确定问题的确切原因,但不得不冻结我的依赖项以避免问题。在调试时,在我看来这不是 Laravel 或 Passport 的直接问题,而是子依赖项。
刚刚升级到 Laravel 8 和 Passport v10.0.1,现在一切都恢复正常了。
推荐阅读
- java - 用户交互更改后使用TextView显示Seekbar值时如何实现MVVM架构?
- react-native - React Native:复制选定的可拖动对象
- c++ - 使用 SFINAE 在 C++ 中检查模板父类
- html - Typescript:X 型缺少以下 Y 型长度、pop、push、concat 等 26 种属性。ts(2769)
- mobile - Acumatica 移动应用程序登录超时如何触发和配置
- python - 过滤numpy数组中的负值
- javascript - 来自 json 的数据未定义
- html - 容器不会散开物品
- node.js - 调试 TypeScript VS Code 时未绑定断点
- http - +HTTPACTION= 0,200,351 无法发布数据