javascript - 在客户端 javascript 文件中使用 JSON 数据

标签 javascript jquery json node.js express

我是 node.js 和 express 的新手。我的问题是如何在客户端 javascript 文件中正确检索 json 数据,因为我收到有关未找到 .json 文件的 404 代码。

我的文件结构是一个通用的快速结构,.json 文件位于 package.json 文件和 app.js 正下方的 nodeapp 文件夹中。我试图从保存在 public/javascripts 文件夹中的 javascript 文件访问此文件,但似乎可以绕过它。这是我试图在 .js 文件中实现的功能:

function getJSONData(){
    var json;
    $.getJSON('/public/web_text.json', function(data){

        json = data
    });
} 

最佳答案

选项1

您需要在 express 中设置静态文件,您可以这样做:

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

然后您可以从您的客户端调用它(没有 public 前缀):

$.getJSON('/javascript/web_text.json', function(data){});

https://expressjs.com/en/starter/static-files.html


选项 2

您的另一个选择是通过sendFile http://expressjs.com/en/api.html#res.sendFile 发送它:

app.get('/public/web_text.json', (req, res) => {
    res.sendFile(__dirname + '/my_json_file.json');
});

然后在你的客户端中你可以这样调用它:

$.getJSON('/public/web_text.json', function(data){})

关于javascript - 在客户端 javascript 文件中使用 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45153130/

相关文章:

javascript - 页面离开事件和后退按钮之前

javascript - JQuery - 删除html元素时格式化数字顺序

javascript - JQuery 通过文本查找 LI,通过类查找 UL

javascript - 将 markdown 转换为 json 对象

java - JsonArray 输出不起作用

java - JSONException : Value <? java.lang.String 类型的 xml 无法转换为 JSONObject

javascript - 如何显示带有城市名称的标记 - Google Geochart

javascript - Groovy 可以运行 JavaScript 吗?

javascript - Jquery $.each 循环处理数组

php - 根据宽度计算横幅的高度