Я пытаюсь вернуть строку json на своем веб-сервере, используя node.js. Я пытаюсь вернуть переменную json, но она говорит, что она не определена. Мне просто нужно руководство о том, как я могу вернуть переменную json, которая является строкой
var http = require("http");
var https = require("https");
http
.createServer(function (req, res) {
res.setHeader("Content-Type", "application/json");
var url = require("url");
var billing_no = url.parse(req.url, true).query["BOL"];
let url_BOL = "https://www.matson.com/vcsc/tracking/bill/BOL";
var url = url_BOL.replace("BOL", billing_no);
https //get data from JSON url
.get(url, (res) => {
let body = "";
res.on("data", (chunk) => {
body += chunk;
});
res.on("end", () => {
try {
let obj = JSON.parse(body);
var scraper = {
message: "Processed results",
response_code: 200,
container: [],
};
for (var i in obj) {
var item = obj[i];
scraper.container.push({
bookingNumber: item.bookingNumber,
containerNumber: item.containerNumber,
originPort: item.originPort,
destPort: item.destPort,
equipmentType: item.equipmentType,
events: item.events,
});
}
var json = JSON.stringify(scraper);
} catch (error) {
console.error(error.message);
}
});
})
.on("error", (error) => {
console.error(error.message);
});
res.end(json); //return json string
})
.listen(7000);