ForgetController.php 893 B

1234567891011121314151617181920212223242526272829
  1. <?php
  2. namespace App\Http\Controllers\Passport;
  3. use App\Http\Requests\Passport\ForgetIndex;
  4. use Illuminate\Http\Request;
  5. use App\Http\Controllers\Controller;
  6. use App\Models\User;
  7. use Illuminate\Support\Facades\Mail;
  8. use Illuminate\Support\Facades\Redis;
  9. class ForgetController extends Controller
  10. {
  11. public function index (ForgetIndex $request) {
  12. $redisKey = 'sendEmailVerify:' . $request->input('email');
  13. if (Redis::get($redisKey) !== $request->input('email_code')) {
  14. abort(500, '邮箱验证码有误');
  15. }
  16. $user = User::where('email', $request->input('email'))->first();
  17. $user->password = password_hash($request->input('password'), PASSWORD_DEFAULT);
  18. if (!$user->save()) {
  19. abort(500, '重置失败');
  20. }
  21. Redis::del($redisKey);
  22. return response([
  23. 'data' => true
  24. ]);
  25. }
  26. }