使用AngularJS和ServiceStack webservice获取('url')操作

时间:2015-02-19 22:06:33

标签: javascript json angularjs web-services servicestack

我是AngularJS的新手,我正在尝试从使用ServiceStack快速制作的Web服务中获取JSON中的一些项目。当我在浏览器中尝试URL时,我可以看到JSON对象,但由于某种原因,AngularJS无法成功获取数据。这是我的实施:

angular.module('SomeApp', []).controller('ItemsFetcher', [ '$http', function($http){

      var x = this;

      x.products= [
          {
            Name: 'Missing items',
            Description: 'Could not access server'
          }];

    $http.get('http://localhost:29029/json/reply/GetAllItemsRequest')
    .then(function(data){

      x.products = [
          {
            Name: 'Success',
            Description: 'Great stuff!'
          }];
      });
  }]);

以下是观点:

<html ng-app="SomeApp">
<head>
    <title>My First App</title>
    <script type="text/javascript" src="angular.min.js"></script>
    <script type="text/javascript" src="app.js"></script>
</head>
<body ng-controller="ItemsFetcher as fetcher">
    <h3>PRODUCTS</h3>
    <div ng-repeat="item in fetcher.products">
        <div>{{item.Name}} - {{item.Description}}</div>
    </div>
</body>

正如我所说,如果我在浏览器中调用http://localhost:29029/json/reply/GetAllItemsRequest,我可以使用JSON对象。

我错过了什么吗?任何想法为什么这不起作用?

1 个答案:

答案 0 :(得分:1)

如果有人可以从中受益,我必须启用CORS(http://en.wikipedia.org/wiki/Cross-origin_resource_sharing)或在同一个地方托管网络服务和网站。