【发布时间】:2016-08-20 05:52:55
【问题描述】:
我将订单数据输入我的应用程序并填充我的字段,但如果我输入了错误的订单号,它不会引发错误,只会用空白信息填充字段。
$http.get('http://example.com/api' + query).success(function(data) {
$scope.orders = data;
console.log($scope.query);
console.log(data);
console.log($scope.orders);
有很多示例,但没有完全可用的代码,任何人都可以帮助编译一个 http.get 函数,如果订单不匹配,该函数将产生错误并显示“未找到订单”错误。
$http.get('http://example.com').then(function(response){
//the response from the server is now contained in 'response'
}, function(error) {
//there was an error fetching from the server
});
【问题讨论】:
-
我相信你应该处理这个服务器端,因为它是一个逻辑错误,你目前得到的是空值,成功响应为 200(因此不会引发错误)。否则,您应该检查收到的响应中的数据,如果为空,请通知您的用户或一般做一些事情。
-
您需要处理
query变量并使用if进行测试,如果一切正常。否则你可能只想在你的后端抛出一个错误然后你可以使用function(error){}。 -
谢谢 mkaran。事实上,一个空订单在 Postman 中返回 200 OK 但有一个空的:data {} 所以也许得到这个排序的服务器端是要走的路,否则一个基于“结果”[[{“原因”:“无效订单”的函数,“动作”:“getOrder”,“数据”:{},“结果”:“失败”}]```
标签: javascript angularjs xmlhttprequest