如何使用ExpressJS在浏览器中呈现JSON

时间:2015-09-26 19:32:19

标签: json express

嗨,我一直绞尽脑汁试图找到一种方法在浏览器中使用Express显示JSON文件,但似乎没有任何效果。

我将此作为参考:response-res

我有一个用新路径替换JSON文件目录的函数:

>> out(1:10,:)

ans =

     4     3     1     4     2
     4     4     1     3     4
     3     2     2     2     3
     1     4     2     2     2
     1     2     3     4     2
     2     2     3     2     1
     4     1     3     2     4
     1     4     1     3     1
     1     1     2     4     4
     1     2     4     2     1

但它只显示浏览器中的文件路径。就像这样:

app.get('/car/model/:filename', function(req, res){ var filename = req.params.filename; var fileDir = __dirname + '/' + filename; res.json(fileDir); })

我设法做的关闭事情是下载JSON文件(res.download(fileDir);)但我需要在浏览器中看到它。我该怎么做?

1 个答案:

答案 0 :(得分:2)

试试这段代码:

//put this in top of file
var fs = require("fs");

app.get('/car/model/:filename', function(req, res){
  var filename = req.params.filename;
  var fileDir = __dirname + '/' + filename;
  var file = fs.readFileSync(fileDir);
  var jsonObject = JSON.parse(file);
  res.json(jsonObject);
})

编辑:如果json文件非常大,那么可能会出现读取问题。还记得验证' filename'。如果这是公开的,则可以访问成瘾文件