【问题标题】:Laravel Passport Password Reset API routeLaravel Passport 密码重置 API 路由
【发布时间】:2018-07-26 18:29:28
【问题描述】:

我已经在 5.5 中设置了 Passport,并拥有自动生成的 Auth\ForgotPasswordControllerAuth\ResetPasswordController 控制器。

然而,虽然 /oauth/token 为我神奇地提供了,但在使用 API 时似乎没有这样的密码重置路径。

我的 API 路由应该是什么样的?

目前我已经尝试过

Route::group(['prefix' => 'password'], function () {
    Route::post('/email', 'Auth\ForgotPasswordController@sendResetLinkEmail');
    Route::post('/reset', 'Auth\ResetPasswordController@reset');
});

但我在查看特征时在供应商文件中发现了这些,但不确定这是否正确。

/password/email 路由也因"message": "Route [password.reset] not defined." 而失败

【问题讨论】:

  • 你有没有做php artisan route:list看路线是否列出?它可以在/password/email之前有前缀/api
  • 只列出了我的 2 个自定义项。我删除了 /api/,因为我的子域是 api.domain.com,很抱歉造成混淆
  • 您是否将 Auth::routes() 添加到 api 路由和/或 web 中?
  • 我没有添加任何护照身份验证路由,/oauth/ 路径似乎很神奇。它们不在 api.php 或 web.php 中。我现在假设护照为我提供了登录但不重置密码的方法
  • 您有 2 个选项,要么在 web 或 api 路由文件中注册一个名为 password.reset 的路由,要么只运行 php artisan make:auth,laravel 将通过登录/注册为您引导所有路由。正如@rchatburn 提到的,不要忘记在 web.php 路由中注册 Auth::routes()

标签: laravel laravel-5.5


【解决方案1】:

由于您没有看到除 2 自定义之外的任何路线,因此我假设您没有运行 artisan auth 命令。先运行那个。它会在你的项目中添加很多路线。 然后将api驱动设置为passport。

【讨论】:

  • 我已经运行了 artisan auth 命令。我列出了所有路线。现在我想要用于重置密码和注册的 api。我有 api 登录为localhost:8080/oauth/token
猜你喜欢
  • 2014-07-24
  • 2018-09-24
  • 1970-01-01
  • 2018-08-31
  • 2015-11-16
  • 2018-09-21
  • 2019-07-21
  • 2022-12-18
  • 2019-04-26
相关资源
最近更新 更多