Laravel 如何在前端显示来自api的.catch中的错误
我正在使用laravel构建一个项目,这是一个简单的Laravel 如何在前端显示来自api的.catch中的错误,laravel,reactjs,axios,Laravel,Reactjs,Axios,我正在使用laravel构建一个项目,这是一个简单的api我已经使用passport构建了一个项目,在前端我正在使用react一切都很好,只是我无法在.catch函数中捕获错误消息。我可以在浏览器的网络选项卡中看到错误,但我无法计算了解如何显示它们 这是我的用户控制器 class UserController extends Controller { public function create(Request $request) { $data = $reque
api
我已经使用passport构建了一个项目,在前端我正在使用react一切都很好,只是我无法在.catch函数中捕获错误消息。我可以在浏览器的网络选项卡中看到错误,但我无法计算了解如何显示它们
这是我的用户控制器
class UserController extends Controller
{
public function create(Request $request)
{
$data = $request->only('name', 'email', 'password');
$validator = Validator::make($data, [
'name' => 'required',
'email' => 'required|email|unique:users',
'password' => 'required|min:6'
]);
if ($validator->fails()) {
return response()->json(['errors'=>$validator->errors()], 422);
}
$user = User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password'])
]);
}
}
这就是我使用axios使用api的方式:
export function signupUser({ name, email, password }) {
return function(dispatch) {
axios.post(`${ROOT_URL}/api/signup`, {name, email, password})
.then(response => {
dispatch({ type: AUTH_USER });
localStorage.setItem('token', response.data.access_token);
browserHistory.push('/feature');
})
.catch((error) => {
// console.log(error);
});
}
}
这是控制台日志
这是我浏览器的“网络”选项卡中的响应
- 如果你有任何问题,请告诉我
- 任何帮助都将被告知
更改以下代码行
.catch((error) => {
console.log(error.response);
});
请检查下面的代码
谢谢@imran我已经调试了一个多小时了。@AmrAly欢迎您
.catch(function (error) {
if (error.response) {
// The request was made, but the server responded with a status code
// that falls out of the range of 2xx
console.log(error.response.data);
console.log(error.response.status);
console.log(error.response.headers);
} else {
// Something happened in setting up the request that triggered an
console.log('Error', error.message);
}
return error;
});