Laravel 7.5.2 (Passport Api) + Ajax Error : Undefined index: aud , \\vendor\\laravel\\passport\\src\\Guards\\TokenGuard.php
Laravel 7.5.2 (Passport Api) + Ajax Error : Undefined index: aud , \\vendor\\laravel\\passport\\src\\Guards\\TokenGuard.php
我正在使用 Laravel 7.5.2 和 Vuejs。我正在使用护照进行 api 身份验证。
我已按照 laravel 网站上的护照安装说明进行操作。
- 有 运行 作曲家需要 laravel/passport、php artisan 迁移和 php artisan passport:install
- 已在用户模型中添加了Api令牌
- 已在 AuthServiceProvider
中添加 Passport::routes()
- 已在 App\Http\Kernel 网络中间件组中添加 \Laravel\Passport\Http\Middleware\CreateFreshApiToken::class
- 已在 config/auth.php
中将 Api driver 更改为护照
正在生成名为 "laravel_token" 的 cookie,并随 ajax 请求一起发送,正如我在开发人员工具中看到的那样。
在我的控制器中,我包含了 api 中间件作为
public function __construct(){
$this->middleware('auth:api');
}
Api/Ajax 回应
{
"message": "Undefined index: aud",
"exception": "ErrorException",
"file": "E:\laravel\vendor\laravel\passport\src\Guards\TokenGuard.php",
"line": 140,
"trace": [
{
...
}
]
我也试过:composer dump-autoload
我的设置
- Laravel: 7.5.2
- 护照:9.0
- PHP : 7.4.0
- Vuejs:2.5.17
这个问题不仅仅与vuejs有关。它与来自简单 javascript 的 ajax 请求有关,或者可能来自任何框架。
你 运行 php artisan passport:install
了吗?
需要在您的存储目录中安装密钥。
laravel/passport 9.0 版存在一些问题。升级到版本 9.0.1 解决了这个问题。
composer update laravel/passport:9.0.1
可以在此处找到问题的详细信息:
Issue Detail on Github
感谢解决问题的人。
我正在使用 Laravel 7.5.2 和 Vuejs。我正在使用护照进行 api 身份验证。 我已按照 laravel 网站上的护照安装说明进行操作。
- 有 运行 作曲家需要 laravel/passport、php artisan 迁移和 php artisan passport:install
- 已在用户模型中添加了Api令牌
- 已在 AuthServiceProvider 中添加 Passport::routes()
- 已在 App\Http\Kernel 网络中间件组中添加 \Laravel\Passport\Http\Middleware\CreateFreshApiToken::class
- 已在 config/auth.php 中将 Api driver 更改为护照
正在生成名为 "laravel_token" 的 cookie,并随 ajax 请求一起发送,正如我在开发人员工具中看到的那样。
在我的控制器中,我包含了 api 中间件作为
public function __construct(){
$this->middleware('auth:api');
}
Api/Ajax 回应
{
"message": "Undefined index: aud",
"exception": "ErrorException",
"file": "E:\laravel\vendor\laravel\passport\src\Guards\TokenGuard.php",
"line": 140,
"trace": [
{
...
}
]
我也试过:composer dump-autoload
我的设置
- Laravel: 7.5.2
- 护照:9.0
- PHP : 7.4.0
- Vuejs:2.5.17
这个问题不仅仅与vuejs有关。它与来自简单 javascript 的 ajax 请求有关,或者可能来自任何框架。
你 运行 php artisan passport:install
了吗?
需要在您的存储目录中安装密钥。
laravel/passport 9.0 版存在一些问题。升级到版本 9.0.1 解决了这个问题。
composer update laravel/passport:9.0.1
可以在此处找到问题的详细信息: Issue Detail on Github
感谢解决问题的人。