有一个rest服务,我的代码大致是这样
$http.jsonp(url)
.then(function(data){
console.log(data)
},function(res){
console.log(res)
})
当数据库没有数据时,控制台 network的信息显示 status是200
response返回数据
console.log(res)打印的信息
为什么network那里显示的status是200,打印出来就成了404了,不返回response的数据。现在我需要当数据库没有数据时拿到returncode=-1 做判断,应该怎么拿到这个response?
URL地址需要添加?callback=JSON_CALLBACK,看你Response的结果是:
({"returnCode": "-1"})
。正常Response的结果是:/**/angular.callbacks._0({"found":12,"posts": []});
以下是一个在线的示例:angularjs-http-jsonp-service-example,你把callback查询参数去掉,在看一下结果哈。
为什么开发者工具显示的status是200,它只是表示HTTP请求成功。为什么返回404,
详细信息请参考AngularJS httpBackend源码。