404尝试使用angularjs访问REST服务时

时间:2014-02-01 06:23:17

标签: angularjs asp.net-web-api2

我有一个非常简单的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

1 个答案:

答案 0 :(得分:2)

事实证明,@Scott确认这是一个跨域问题。这需要在服务器端设置JSONPCORS。或者在同一个端口上运行app和api。