我得到了 JSON,现在我需要将它下载到特定目录
I got my JSON, now I need it to download inot an specific directory
我有一个 API 定期向 RESTAPI 发出请求并将数据存储到我的数据库中,现在我想为某些数据添加一个新功能:通过向我的 API 发出请求,然后,我的 API 向 RESTAPI 发出另一个请求,但我不想将此数据存储在我的数据库中,我希望将其下载为 JSON 或 CSV.
我设法创建了请求,我将请求编码为 RESTAPI 并设法将 JSON 放入包含所有数据的变量中,我卡在那里了,我该怎么做要将此数据下载到目录中吗?
我正在使用 javascript nodeJS 和 bent ,getJSON ,mssql ,https.
函数代码:
async function descargarDatosOpendata(anioIni, anioFin, Indicativo){
try{
while(anioIni == anioFin || anioIni < anioFin){
console.log("first");
var http = require("https");
var options = {
"method": "GET",
"hostname": "opendata.aemet.es",
"path": "/opendata/api/valores/climatologicos/mensualesanuales/datos/anioini/"+ anioIni +"/aniofin/"+ anioIni +"/estacion/"+ Indicativo +"",
"headers": {
"cache-control": "no-cache",
"api_key": "MYKEY"
}
};
console.log("second");
var req = http.request(options, function (res) {
console.log("tercera");
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", async function () {
console.log("endChunk");
var body = Buffer.concat(chunks);
console.log(body);
var bodyString = body.toString();
bodyJSON = JSON.parse(bodyString);
console.log(bodyJSON);
console.log(bodyJSON.datos);
if (bodyJSON.estado == 200 && bodyJSON.descripcion == "exito") {
let obj = await getJSON(bodyJSON.datos);
console.log(obj)
}
});
});
anioIni++;
req.end();
}
}
catch (err) {
console.log(err);
}
}
obj log是json格式的数据:[{data}]
如果此代码在 Node 中 运行,则应使用 Node fs
模块。 appendFile
方法将创建一个新文件或附加到它(如果它已经存在)。 Learn more about fs
示例代码
var fs = require('fs');
fs.appendFile('mynewfile1.txt', 'Hello content!', function (err) {
if (err) throw err;
console.log('Saved!');
});
我有一个 API 定期向 RESTAPI 发出请求并将数据存储到我的数据库中,现在我想为某些数据添加一个新功能:通过向我的 API 发出请求,然后,我的 API 向 RESTAPI 发出另一个请求,但我不想将此数据存储在我的数据库中,我希望将其下载为 JSON 或 CSV.
我设法创建了请求,我将请求编码为 RESTAPI 并设法将 JSON 放入包含所有数据的变量中,我卡在那里了,我该怎么做要将此数据下载到目录中吗?
我正在使用 javascript nodeJS 和 bent ,getJSON ,mssql ,https.
函数代码:
async function descargarDatosOpendata(anioIni, anioFin, Indicativo){
try{
while(anioIni == anioFin || anioIni < anioFin){
console.log("first");
var http = require("https");
var options = {
"method": "GET",
"hostname": "opendata.aemet.es",
"path": "/opendata/api/valores/climatologicos/mensualesanuales/datos/anioini/"+ anioIni +"/aniofin/"+ anioIni +"/estacion/"+ Indicativo +"",
"headers": {
"cache-control": "no-cache",
"api_key": "MYKEY"
}
};
console.log("second");
var req = http.request(options, function (res) {
console.log("tercera");
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", async function () {
console.log("endChunk");
var body = Buffer.concat(chunks);
console.log(body);
var bodyString = body.toString();
bodyJSON = JSON.parse(bodyString);
console.log(bodyJSON);
console.log(bodyJSON.datos);
if (bodyJSON.estado == 200 && bodyJSON.descripcion == "exito") {
let obj = await getJSON(bodyJSON.datos);
console.log(obj)
}
});
});
anioIni++;
req.end();
}
}
catch (err) {
console.log(err);
}
}
obj log是json格式的数据:[{data}]
如果此代码在 Node 中 运行,则应使用 Node fs
模块。 appendFile
方法将创建一个新文件或附加到它(如果它已经存在)。 Learn more about fs
示例代码
var fs = require('fs');
fs.appendFile('mynewfile1.txt', 'Hello content!', function (err) {
if (err) throw err;
console.log('Saved!');
});