2013-10-01 53 views
0

我想通過使用下面的代碼訪問angular.js中的json文件,但由於下面提到的顯示錯誤,我無法訪問代碼。 幫助,將不勝感激。在Angular.js中訪問JSON文件

模塊:

angular.module("demoApp", ['demoApp.factory','demoApp.controllers']); 

工廠:

angular.module('demoApp.factory', []). 
factory('getJsonDataFactory',function($http){ 
    return{ 
    getData : function() { 
     return $http.get('mapData.json'); 
    } 
} 
}); 

控制器:

angular.module('demoApp.controllers', []). 
    controller('GetJsonController', function($scope,$http,getJsonDataFactory) { 
       $scope.markers = []; 
       getJsonDataFactory.getData().success(function(data){ 
       $scope.photos=data; 
      }); 
     }); 

錯誤: 在Firefox:

"Access to restricted URI denied" code: "1012" 


return logFn.apply(console, args) 

在Chrome中:`

Origin null is not allowed by Access-Control-Allow-Origin. 
+0

它在服務器上運行嗎? – Gopesh

+0

剛剛通過瀏覽器訪問文件時會發生什麼? – vittore

+0

不..這是不是在服務器上運行 – coder

回答

7

事實上,我認爲你沒有一臺服務器。

所以,你通過file://協議得到你的應用程序。

file://協議出於安全原因無法執行http獲取方法

爲了解決您的問題,我建議您將您的應用程序放在一個簡單的Web服務器上(如Apache,wamp,xamp,lamp等),或者更好地使用grunt來構建應用程序並通過節點在測試服務器上運行它.js

+0

好抓。這個問題與angular或json無關 –