【问题标题】:creating nested json file in node js在节点 js 中创建嵌套的 json 文件
【发布时间】:2021-11-22 20:23:51
【问题描述】:

这里我想创建一个嵌套的 json 文件。我有一个变量loggedPerson1 作为字符串,它接受已登录的人的username 并且该人选择了课程。我想以这样一种方式创建 json 文件,即注册的课程将使用该用户的名称。

var exists = fs.existsSync('RegisteredCourses.json'); 
if(exists) {
    console.log("Loading");
    var data = fs.readFileSync('RegisteredCourses.json', 'utf-8');
    objRegister = JSON.parse(data);
}
else  {
    console.log('created new ')
    var objRegister = {loggedPerson1:[]};
}

app.get('/RegisteredCourses',(req,res) =>{

    res.send(loggedPerson)
})

app.post('/RegisteredCourses',(req,res) =>{
    var declaredCourse =
        {
        key: Date.now().toString(),
        CourseName : req.body.CourseName,

        CourseCode: req.body.CourseCode,
        StartDate:req.body.StartDate,
        EndDate:req.body.EndDate,
        Total_Fee: req.body.Fees,

        Delivery_Mode : req.body.Delivery_Mode,
        Description : req.body.Description,
        CourseType: req.body.CourseType
      }

         if(!declaredCourse.CourseName ){
            reply  ={
                msg:"Please enter data correctly"
            }
            res.send(reply)
        }
        else{
            objRegister.loggedPerson1.push(declaredCourse)

         let data = JSON.stringify(objRegister, null, 2);

         fs.writeFile('RegisteredCourses.json',data,finished);

         console.log('RegisteredCourses updated')
 
         function finished(err){
             reply = {
                 status:"Success",
                 
             }



             res.send(reply)
             console.log(reply)
         }



        }
})

【问题讨论】:

  • 好的,那是什么不工作?
  • 请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。

标签: node.js json


【解决方案1】:

不清楚您是在此处寻找 JSON 的结构还是在其他地方。 JSON 结构可能类似于:

{
  "students": {
    "studentName": "Person 1",
    "Courses": {
      "one": "one",
      "two": "two"
    }
  }
}

您的代码用于读取它:

var data = fs.readFileSync('RegisteredCourses.json', 'utf-8');
objRegister = JSON.parse(data);

应该可以正常工作,我在我的项目中使用过。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-27
    • 1970-01-01
    • 2021-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-25
    • 2016-08-16
    相关资源
    最近更新 更多