2016-11-04 4 views
2

Я создаю API в Laravel 5.3, и я должен изменить ответ по умолчанию при сбросе пароля.Laravel change password reset response

Итак, как бы я это сделал, не внося изменений в структуру. То, что я хочу, заключается в следующем:

В моей ResetPasswords черте, расположенной здесь \Illuminate\Foundation\Auth\ResetPasswords

ответ по умолчанию:

/** 
    * Get the response for a successful password reset. 
    * 
    * @param string $response 
    * @return \Illuminate\Http\Response 
    */ 
    protected function sendResetResponse($response) 
    { 
     return redirect($this->redirectPath()) 
          ->with('status', trans($response)); 
    } 

    /** 
    * Get the response for a failed password reset. 
    * 
    * @param \Illuminate\Http\Request 
    * @param string $response 
    * @return \Illuminate\Http\Response 
    */ 
    protected function sendResetFailedResponse(Request $request, $response) 
    { 
     return redirect()->back() 
        ->withInput($request->only('email')) 
        ->withErrors(['email' => trans($response)]); 
    } 

То, что я хочу это:

/** 
    * Get the response for a successful password reset. 
    * 
    * @param string $response 
    * @return \Illuminate\Http\Response 
    */ 
    protected function sendResetResponse($response) 
    { 
     return response()->json(['success' => trans($response)]); 
    } 

    /** 
    * Get the response for a failed password reset. 
    * 
    * @param \Illuminate\Http\Request 
    * @param string $response 
    * @return \Illuminate\Http\Response 
    */ 
    protected function sendResetFailedResponse(Request $request, $response) 
    { 
     return response()->json(['error' => trans($response)], 401); 
    } 

Так как я могу выполнить это без внесения изменений в структуру?

ответ

1

Скопируйте методы во втором кодовом блоке на ResetPasswordController. Это будет переопределять методы Trait в контроллере, используя его.

Поступая таким образом, вы не вносите изменения в структуру Laravel, и ваши изменения не будут потеряны при следующей установке композитора.