首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Ajax从本地JSON获取数据?

如何使用Ajax从本地JSON获取数据?
EN

Stack Overflow用户
提问于 2017-04-28 08:19:33
回答 2查看 2.7K关注 0票数 0

你好,聪明的人!

我已经坐了几个小时,试图弄清楚为什么不能使用Ajax加载本地JSON文件。我打赌这是个愚蠢的错误,我完全误解了一些东西。我用的是Node.js快递。

这两个文件的位置:

“无轨电车/视图/trips.ejs”(执行ajax-请求)

有轨电车/列车/快车.

代码语言:javascript
复制
$.ajax(
    {
      type: "GET",
      url: "../json/allstops.json",
      contentType: "application/json; charset=utf-8",
      dataType: "json",     
      success: function (data) {

        alert('success');

      },

      error: function (msg) {
        alert("error");
        alert(msg.responseText);
      }
    });

我尝试过在各种变体中更改URL:

./alltops.json

allstops.json

json/万事通

/json/万事通

/json.allstops.json

不管我输入了什么,我都会得到404错误。

代码语言:javascript
复制
GET http://localhost:1337/json/allstops.json 404 (Not Found) jquery.min.js:4

我是否输入了错误的URL,或者我的代码中是否有其他我没有检测到的问题?我对JSON和Javascript非常陌生,所以我不会感到惊讶。

我真的很感激你给我一些小费!

最佳/J

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-04-28 08:32:12

我是否输入了错误的URL,或者我的代码中是否有其他我没有检测到的问题?

这取决于您是否可以访问示例中请求中的URL:

代码语言:javascript
复制
GET http://localhost:1337/json/allstops.json 404 (Not Found) jquery.min.js:4

查看在使用浏览器访问http://localhost:1337/json/allstops.json时是否看到了正确的JSON。如果您得到404,那么这个JSON不会在这个路径上使用,问题可能是您的后端不能提供JSON,也可能是您使用了错误的URL。

如果您没有包含一行代码,甚至连一行代码都不包含,那么就不可能告诉您后端代码是否还行,这些代码实际上试图提供所讨论的JSON。

我的假设是您没有为JSON文件提供服务。

我假设整个应用程序都位于trollytrains目录中,并且在其中有一个json目录。为了提供服务,如果您使用Express,您需要使用类似的东西:

代码语言:javascript
复制
app.use('/json', express.static(path.join(__dirname, 'json')));

有关使用或不带Express的静态文件的更多选项,请参见以下答案:

票数 1
EN

Stack Overflow用户

发布于 2017-04-28 08:28:41

尝尝这个。

代码语言:javascript
复制
  $.ajax({
  url: '../json/allstops.json',
  dataType: 'json',
  data: 
  async: false,
  success:function()
{}
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43675407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档