我有一个非常简单的ASP.NET Web API 2项目设置,它只有一个控制器。控制器如下:
public class ServiceCodesController : ApiController
{
// GET api/servicecodes
public List<ServiceCode> Get()
{
ServiceCodeRepository _repo = new ServiceCodeRepository();
return _repo.ServiceCodes().ToList();
}
}
使用http://localhost:52491/api/ServiceCodes
,我可以在浏览器中看到结果。
但是,在我的角应用程序中,尝试访问同一个网址时出现404错误。
app.controller('ServiceCodes', function ($scope, $http) {
$scope.serviceCodes = [];
$http.get('http://localhost:52491/api/ServiceCodes').
success(function (data, status, headers, config) {
$scope.serviceCodes = data;
}).
error(function (data, status, headers, config) {
console.log(status + " sent "+ data);
});
});
angular app在节点上运行:8000
答案 0 :(得分:2)
事实证明,@Scott确认这是一个跨域问题。这需要在服务器端设置JSONP
或CORS
。或者在同一个端口上运行app和api。