【问题标题】:Reading and Editing Firebase Database JSON file [Nodejs]读取和编辑 Firebase 数据库 JSON 文件 [Nodejs]
【发布时间】:2018-07-25 05:17:56
【问题描述】:

我有一个名为 data.json 的文件,其中包含如下所示的数据。它来自一个firebase数据库。

[
     "-L1PW1Gt_34w1xb32BK5" : {
  "Article_Headline" : "Mobay flood victims receive help from ministry",
  "Article_Image_URL" : "https://www.wefornews.com/wp-content/uploads/2017/01/news-3.jpg",
  "Article_Published_Date" : "Wed, 27 Dec 2017 23:02:53 GMT",
  "Article_URL" : "http://www.jamaicaobserver.com/latestnews/Mobay_flood_victims_receive_help_from_ministry?profile=1228",
  "Category" : "riots,",
  "Location" : "Jamaica",
  "Source_Name" : "jamaica observer",
  "Tags" : "SocialSecurity,LabourParty,MontegoBay,Horsepower,JIS,Jamaica,USRoute36,AndrewHolness"
},
]

我希望我的数据看起来像这样

 {
     "Article_Headline" : "Mobay flood victims receive help from ministry",
     "Article_Image_URL" : "https://www.wefornews.com/wp-content/uploads/2017/01/news-3.jpg",
     "Article_Published_Date" : "Wed, 27 Dec 2017 23:02:53 GMT",
     "Article_URL" : "http://www.jamaicaobserver.com/latestnews/Mobay_flood_victims_receive_help_from_ministry?profile=1228",
     "Category" : "riots,",
     "Location" : "Jamaica",
     "Source_Name" : "jamaica observer",
     "Tags" : "SocialSecurity,LabourParty,MontegoBay,Horsepower,JIS,Jamaica,USRoute36,AndrewHolness"
     "key": "-L1PW1Gt_34w1xb32BK5" 
   }

什么代码可以用来产生这样的结果?

这是我下面的代码,它不起作用

var http = require('http');
var fs = require('fs');
var obj = fs.readFileSync('./data.json', 'utf8');


function snapshotToArray(obj) {
var returnArr = [];

obj.forEach(function(childSnapshot) {
    var item = childSnapshot.val();
    item.key = childSnapshot.key;

    returnArr.push(item);
});

return returnArr;
};

console.log(snapshotToArray(obj));

【问题讨论】:

  • 但是你上面提到的不是一个有效的json
  • 你试过什么?显示一些代码:)
  • 只需要简单的文件
  • @RishikeshDhokare 怎样才能使它成为有效的 JSON??
  • 用它来验证你的 json jsonlint.com

标签: json node.js file firebase-realtime-database


【解决方案1】:

一般来说,假设 JSON 是有效的:

import fs from 'fs';
const obj = JSON.parse(fs.readFileSync('./data.json', 'utf8'));
const data_to_keep = obj.the_key_of_data_to_keep;
delete obj.the_key_of_data_to_keep;

现在属性the_key_of_data_to_keep 已被删除,但您仍然可以通过data_to_keep 对其值进行引用,例如,您可以将其插入到obj 的某个位置。

【讨论】:

    猜你喜欢
    • 2019-08-03
    • 2021-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-03
    • 2018-01-20
    • 1970-01-01
    相关资源
    最近更新 更多