【发布时间】:2016-11-04 13:02:35
【问题描述】:
我正在 Laravel 5.3 中构建一个 API,我必须在重置密码时更改默认响应。
那么我将如何在不更改框架的情况下做到这一点。我想要的是这样的:
在我的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);
}
那么我怎样才能在不改变框架的情况下实现这一点呢?
【问题讨论】: