【发布时间】:2014-04-17 03:06:18
【问题描述】:
这是我的代码:
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 方法读取它。我收到以下错误:
XMLHttpRequest 无法加载 file:///C:/Users/Avraam/Documents/GitHub/AngularJS/app/js/Services/products.json 跨源请求仅支持 HTTP。角.min.js:73 错误:发生网络错误。
我的错误是什么?我没有使用任何服务器;我只是用 Chrome 打开我的索引文件。这是错误吗?如果我想使用http 方法,我应该使用服务器吗?
【问题讨论】:
-
是的,您应该设置一个 HTTP 服务器应用程序来托管页面和 JSON。
file://通常不允许使用 Ajax。 -
如果你有 Python,你可以通过在包含 index.html 的目录中运行
python -m SimpleHTTPServer来启动一个服务器。这些页面可在 127.0.0.1:8000 访问,并且不受本地页面的限制。否则,XAMPP 或 WAMP 无论如何都在那里。
标签: javascript angularjs