如何在浏览器中打印 json console.log 数据以供 api 使用
How to print json console.log data in browser for use with api
好的...我想创建一个 api 但我似乎无法输出数据,我已经从 xml 文件中解析了它并且可以 console.log 必要的数据但是当我想将数据输出到浏览器时我得到一个空数组有什么建议吗?
const express = require('express');
const app = express();
const fs = require('fs');
const xmlParser = require("xml2json")
app.get('/posts', (req, res) => {
let xmin = req.query.xmin;
let xmax = req.query.xmax;
let ymin = -Math.abs(req.query.ymin);
let ymax = -Math.abs(req.query.ymax);
const foodRatings = fs.readFile( "./FHRS433en-GB.xml", function(err, data) {
const xmlObj = xmlParser.toJson(data, {reversible: true, object: true})
const estDetail = xmlObj["FHRSEstablishment"]['EstablishmentCollection']['EstablishmentDetail']
for (let i=0;i < estDetail.length;i++) {
let latitude = estDetail[i]["Geocode"]["Latitude"]
let longitude = estDetail[i]["Geocode"]["Longitude"]
if ((typeof latitude !== "undefined") && (typeof longitude !== "undefined")) {
if ((latitude['$t'] >= xmin && latitude['$t'] <= xmax) && (longitude['$t'] >= ymin && longitude['$t'] <= ymax)) {
// jsonData += estDetail[i];
let jsonData = [];
var config = JSON.parse(estDetail[i]);
jsonData.push(config);
console.log(jsonData);
res.json(jsonData);
}
}
}
})
});
当我看到人们在线输出数据时,他们在一个对象中有 json 数据,该对象直接链接到字符串而不是文件,我不知道我将如何从传递的文件中提取数据它变成一个空数组,然后我可以使用 res.json(jsonData)?
调用数据
提前致谢
你试过了吗
return res.json(data)
我看到你在一个 for 循环中,所以你可能想在它之外做那个
好的...我想创建一个 api 但我似乎无法输出数据,我已经从 xml 文件中解析了它并且可以 console.log 必要的数据但是当我想将数据输出到浏览器时我得到一个空数组有什么建议吗?
const express = require('express');
const app = express();
const fs = require('fs');
const xmlParser = require("xml2json")
app.get('/posts', (req, res) => {
let xmin = req.query.xmin;
let xmax = req.query.xmax;
let ymin = -Math.abs(req.query.ymin);
let ymax = -Math.abs(req.query.ymax);
const foodRatings = fs.readFile( "./FHRS433en-GB.xml", function(err, data) {
const xmlObj = xmlParser.toJson(data, {reversible: true, object: true})
const estDetail = xmlObj["FHRSEstablishment"]['EstablishmentCollection']['EstablishmentDetail']
for (let i=0;i < estDetail.length;i++) {
let latitude = estDetail[i]["Geocode"]["Latitude"]
let longitude = estDetail[i]["Geocode"]["Longitude"]
if ((typeof latitude !== "undefined") && (typeof longitude !== "undefined")) {
if ((latitude['$t'] >= xmin && latitude['$t'] <= xmax) && (longitude['$t'] >= ymin && longitude['$t'] <= ymax)) {
// jsonData += estDetail[i];
let jsonData = [];
var config = JSON.parse(estDetail[i]);
jsonData.push(config);
console.log(jsonData);
res.json(jsonData);
}
}
}
})
});
当我看到人们在线输出数据时,他们在一个对象中有 json 数据,该对象直接链接到字符串而不是文件,我不知道我将如何从传递的文件中提取数据它变成一个空数组,然后我可以使用 res.json(jsonData)?
调用数据提前致谢
你试过了吗
return res.json(data)
我看到你在一个 for 循环中,所以你可能想在它之外做那个