我正在向服务发出 get 请求以检查是否存在某个 key - 如果存在,则返回一些数据,如果不存在,则返回 401。我无法控制该服务 - 但我不想在控制台中显示 401 - 这看起来不专业,因为在大多数情况下这个键不存在。有没有办法捕获 401,使其永远不会打印到控制台?
现在我有以下内容 - 我可以测试状态是否为 401,但我无法捕捉到它阻止它打印到控制台。这可能吗?我不想在 401 上使用全局处理程序,我只想为这个特定请求捕获一个。
$http.get(url, { withCredentials: true })
.success(function(data, status, headers, config) {
result.resolve(data, status, headers, config);
})
.error(function(data, status, headers, config) {
if(status === 401)
{
// I can test for a 401 here, but that doesn't seem to help
}
result.reject(data);
});
最佳答案
您无法阻止在控制台中打印 ajax 错误。
避免这种情况的一种方法是返回常规 200
来自具有特定内容的服务器,您将作为丢失的关键错误客户端进行处理。
或者你可以使用 console.clear()
在响应之后,但我不知道它是否被所有浏览器支持,并且它可能不会更“专业”。
关于angularjs - 使用 Angular 获取请求捕获 401,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29131255/