这是我的代码:
MyAppModule.factory('EventData', function($http,$log){
return {
getEvent : function(successcb){
$http({method: 'GET', url: './js/Services/products.json'}).
success(function(data) {
$log.info("success");
}).
error(function(data) {
$log.info("error");
});
}
};
});
我在本地位置有一个简单的JSON文件,我正在尝试使用AngularJS的http
方法读取它。我收到以下错误:
HTTP无法加载file:///C:/Users/Avraam/Documents/GitHub/AngularJS/app/js/Services/products.json仅支持
XMLHttpRequest跨域请求。angular.min.js:73错误:发生网络错误。
我的错误是什么?我没有使用任何服务器;我只是用Chrome打开我的索引文件。这是错误的地方吗?如果我想使用http
方法,我应该使用服务器吗?
发布于 2014-03-14 06:09:12
如果这是用于本地开发,并且您使用的是Chrome,那么您需要使用几个参数来运行Chrome来放松安全性,如下所示:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --allow-file-access-from-files --disable-web-security
发布于 2014-07-10 07:11:20
我通过在服务器上运行我的页面修复了这个问题,如下所示
cd /path/to/dir/with/the/index/file
python3 -m http.server
然后在浏览器中打开http://localhost:8000。
有关服务当前目录的其他方式,请参阅this question。
发布于 2014-06-17 20:46:07
对于Mac用户,相应的命令为:
open /Applications/Google\ Chrome.app --args --allow-file-access-from-files --disable-web-security
更新:
open -n -a /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --args --user-data-dir="/tmp/chrome_dev_test" --allow-file-access-from-files --disable-web-security
https://stackoverflow.com/questions/22360700
复制相似问题