参考Auth文件夹内已经有的ForgotPasswordController和ResetPasswordController两个类文件。
为了方便我们直接先复制这两个文件:
粘贴到Api文件夹内:
将两个类文件的namespace修改为:
namespace App\Http\Controllers\Api;
当忘记密码时,我们需要的主要是在SendsPasswordResetEmails这个trait中的sendResetLinkEmail方法。
所以我们在api.php中添加一个route,用于将重置请求指引到该方法即可;
Route::post(‘/password/email‘, ‘Api\ForgotPasswordController@sendResetLinkEmail‘);
同样的重置密码请求时,需要的是ResetsPasswords这个trait中的reset方法。
所以我们在api.php中添加一个route,用于将重置请求指引到该方法即可;
Route::post(‘/password/reset‘, ‘Api\ResetPasswordController@reset‘);
注意:如果需要重写两个trait中的方法,比如我们的api请求需要一个json返回{Laravel 7.x版本已经支持判断返回json结果},可以在ForgotPasswordController和ResetPasswordController两个类文件中分别Ctrl+o快捷键重写即可。