我正在创建一个应用程序:Laravel作为后端,Vue作为前端。对于验证错误时的响应,我使用代码422(根据this article的建议)。
我的PHP代码(来自RegisterController):
if ($this->validator($request->all())->fails()) {
return response()->json(['errors'=>$this->validator($request->all())->errors()], 422);
}
在我的Vue应用程序中,我正在使用Vuex。我的注册操作如下所示:
const actions = {
ACTION_SIGN_UP: async (context, payload) => {
Axios
.post('/api/v1/register', payload)
.then((response) => {
console.log(response);
})
.catch((error) => {
if (error.response) {
console.log(error.response.data);
console.log(error.response.status);
console.log(error.response.headers);
} else if (error.request) {
console.log(error.request);
} else {
console.log('Error', error.message);
}
console.log(error.config);
});
}
};
已处理该错误,但同时控制台中显示一条错误消息:
那么如何防止控制台消息?
答案 0 :(得分:0)
此主题已经讨论了很长时间,请参阅3年前的this相关SO帖子,这是一个长期争论的话题。
要点是,这是开发人员不应该(并且不能在Chromium中)更改的预期功能。这些网络错误是从正在访问的后端资源中发回的,旨在将错误记录在开发控制台中。
这就是说,没有理由将它们隐藏起来,尝试打开开发控制台并检查一些最大的网站(Twitter,Facebook等),很可能会看到一些响应错误记录。
有一个好!