我正在使用Restangular构建一个应用程序.我会在一个地方实现处理错误,如401,403,500等在响应拦截器中.
这就是我写的:
RestangularProvider.setResponseExtractor(function(response, operation, what, url) { switch(response.meta.code) { case 200: // Handle 200 break; case 401: // Redirect to login break; /* ... */ default: break; } }
实际发生的是200正确看到但是这个方法根本没有被401命中.我从服务器端获得的JSON格式如下,以便成功响应:
{"meta":{"apiVersion":"0.1","code":200,"errors":null},"response":{"response":"value"}}
和
{"meta":{"apiVersion":"0.1","code":401,"errors":[{"code":401,"message":"Unauthorized"}]},"response":null}
为了错误.响应头也包含Status Code:401 Unauthorized
.我究竟做错了什么?