0

我正在做一个网页的前端,现在需要一些 json 我不做后面,所以我制作了一个名为 map.json 的文件并将它放在我的服务器上。

我正在使用 node.js 作为服务器,因此在公共文件夹中我创建了一个名为 jason 的新文件夹并将文件保存在那里。

现在我正在对该文件进行 ajax 调用,但程序没有找到它,当我从谷歌浏览器公开时,我看不到 json 文件夹。

我必须做什么才能看到这个文件并将其上传,因为它是对服务器的 ajax 调用?

这是我的 jquery 代码,它在 public/javascript 的一个文件中:

  $.ajax('/../json/map.json', {
    cache: false, 
    dataType: "json",           
    success: function(json) { ... code ... }
  });

我真的不知道我应该如何或在 noje.js 中修改什么文件

谢谢!

4

1 回答 1

1

使用的 URL 路径在技术上无效。在尝试到达不存在的域根路径的父目录的/引导之后。..

尽管浏览器可能会简单地忽略..,但您仍然应该选择其中一个 - 要么指定从根目录开始的路径:

$.ajax('/json/map.json', {
    // etc.
});

或相对于当前页面的 URL 路径(例如,/some/page):

$.ajax('../json/map.json', {
    // etc.
});

您还声明该文件夹名为“ jason”,而请求包括/json/.... 一个可能只是一个错字,但要确保它们匹配。

而且,假设您使用的是static()中间件,URL 将需要匹配指定的前缀(或缺少前缀):

app.use(express.static(__dirname + '/public'));

// $.ajax('/json/map.json', ...);
app.use('/public', express.static(__dirname + '/public'));

// $.ajax('/public/json/map.json', ...);
于 2013-06-27T00:37:39.207 回答