使用Angular在IE 9中使用$ http问题

时间:2014-11-05 13:41:30

标签: angularjs http

我正在使用角度js处理示例应用程序。我是新手,请耐心等待我

我在controllers.js中有以下代码:

var myApp = angular.module('myApp', []);

myApp.controller('MyController', ['$scope', '$http', function ($scope, $http) {
    $http.get('js/data.json').success(function (data) {
        $scope.artists = data;
        $scope.artistOrder = 'name';
    });
}]);

在这里,我使用http.get从文本文件中将json数据加载到应用程序中,如上所示。

我使用的是IE 9,只允许使用它,而不是任何浏览器。

当我执行上面的代码时,我遇到如下所述的错误:

CSS3117:@ font-face失败的跨源请求。资源访问受到限制

我不确定什么是跨源请求。我想知道为什么一个简单的http get请求失败。

以下是我的疑问:

  1. 什么是交叉来源请求?一个例子很棒
  2. 上面这个例子怎么样?
  3. 这是什么补救措施/解决方案/替代方案?

1 个答案:

答案 0 :(得分:-1)

尝试在控制器外定义var:

this.artists = {};

然后,在控制器内部:

this.artists = data;

因此页面可以访问该var。另外,您只能在控制器内访问它。