Laravel /护照-迁移密钥不可用后

时间:2020-07-16 06:55:44

标签: php laravel laravel-passport laravel-7

设置

  • 护照版本:“ laravel / passport”:“ ^ 9.3”,
  • Laravel版本:“ laravel / framework”:“ ^ 7.0”,
  • PHP版本:“ php”:“ ^ 7.2.5”,
  • 数据库驱动程序和版本:MYSQL 8.0.15

说明:

我曾经用this article用laravel-passport创建新的API。安装后,我已经成功注册了一些用户。然后,经过一些编码,我需要向现有表中添加一些列。因此,在添加了这些列之后,我使用了最新的命令来迁移所有数据库。

php artisan migrate:fresh --seed

操作成功,并且所有表(也包括oauth表)已创建。 但是在此迁移过程之后,现有的通行证授予令牌不可用。当我通过从Web应用程序界面发送正常的AJAX请求来注册新用户时,会出现此错误。

Undefined property: stdClass::$refresh_token

我尝试了许多方法并对此问题进行了研究,但是只有在更新旧的客户端和密码密钥后才能解决问题。

php artisan passport:install --force

复制步骤:

安装通行证后,只需安装并创建密钥并迁移数据库。这样一切都会正常。然后,使用命令php artisan migrate:fresh迁移数据库之后。这样旧密钥将无法使用。

1 个答案:

答案 0 :(得分:-1)

执行此操作以覆盖现有密钥,它将起作用

php artisan passport:install --force

或者您可以使用

发布Passport的配置文件
php artisan vendor:publish --tag=passport-config

然后将提供从环境变量中加载加密密钥的选项:

有关详细说明,请参见https://laravel.com/docs/7.x/passport