【发布时间】:2013-09-04 17:30:54
【问题描述】:
我目前正在阅读“Head first HTML5 programming”一书。我想从我自己机器上的 Web 服务器加载名为 sales.json 的文件的内容。我为此使用了 wampserver。
在文件夹wamp/www/gumball/ 中,我放置了所有相关的.html、.js 和.css 文件,以及sales.json 文件。
我的 JavaScript 代码很简单:
window.onload = function() {
var url = "http://localhost/gumball/sales.json";
var request = new XMLHttpRequest();
request.open("GET", url);
request.onload = function() {
if (request.status == 200) {
updateSales(request.responseText);
}
};
request.send(null);
}
function updateSales(responseText) {
var salesDiv = document.getElementById("sales");
salesDiv.innerHTML = responseText;
}
这没有任何作用!在我的浏览器中输入链接:http://localhost/gumball/sales.json 会打开正确的文件,因此链接应该是正确的。即使使用本书附带的.js 文件(以及我正在尝试制作的应用程序的完成版本),也没有加载任何内容。
使用警报语句进行测试告诉我request.onload 事件永远不会发生。我不知道为什么会这样。
一个我还不太明白的事实:当我在浏览器中输入:http://localhost/gumball/sales.json:(我在链接末尾添加了一个冒号)时,我收到了 403 Forbidden 错误!为什么会这样?这跟我的问题有关系吗?
【问题讨论】:
-
如何打开初始文件?你必须通过
http://localhost/...打开它,而不是file:// -
您从哪个网址加载来自?
-
什么意思?您可以在我的代码中看到我尝试访问该文件的方式,并在浏览器中键入 localhost/gumball/sales.json 会返回所需的文件。所以我不是从 file:// 打开它。当我使 wamp 服务器脱机时,我使用的链接不起作用。
-
@Kappie001 — dystroy 和 SLaks 询问您如何打开 HTML 文档,而不是 JSON 文档。
-
@Kappie001 你有没有在控制台收到任何错误?
标签: javascript json localhost