我已经创建了一个从我的浏览器的地址行工作的Web API,但是当我尝试编写AngularJS或jQuery调用时,它们失败了,没有任何解释。我想我在URL中没有正确的路由,或者它可能是JSON格式问题。我有一个早期版本的Web API和AngularJS或jQuery的相同调用。但是在早期的版本中,我已经在路线中宣布了行动。然后我在RESTful Web API中读取最佳实践,省略路由中的操作并将路由基于HTTP方法。所以我重建了Web API以便这样做,但现在我无法在客户端重新连接。有人可以在我的URL路由中看到错误吗?您可以在此示例中测试URL并在浏览器中查看数据。
注意:我想我已经解决了这个问题。我需要在我的新Web API中添加JSON格式化程序。这是我的第一个版本。这是我到目前为止发现的唯一区别。
var sURL2 = "http://stevegaines.info/api/Securities?SecurityType=CASH";
$http.get(sURL2)
.then(function (oData)
{
alert("oData = " + oData);
$scope.Securities = oData;
}, function (response)
{
alert("error = " + response.statusText);
});
答案 0 :(得分:1)
我终于开始工作了。我认为问题在于客户端javascript,但我也重新编写了Web API,所以我不确定。我知道在javascript中改变的一件事是我使用了jQuery .success方法,但我将其更改为.then,因为jQuery弃用了.success。当我这样做时,我不得不使用dataResponse的data属性。只是简单的dataResponse赢了。我猜它是一种不同类型的物体。
$http.get(sURL2)
.then(function (dataResponse)
{
// this doesn't work
// $scope.Securities = dataResponse.data.records;
// this doesn't work
// $scope.Securities = dataResponse;
// this works
$scope.Securities = dataResponse.data;
}, function (response)
{
alert("error = " + response.statusText);
});