簡體   English   中英

使用 nodeJS 和 mongoose 將外部 JSON 文件導入到 MongoDB

[英]Import external JSON-file to MongoDB using nodeJS and mongoose

1. City.json (json-file) 

    {
      "id": "1",
      "name": "Bombuflat",
      "state_id": "1"
    },
    {
      "id": "2",
      "name": "Garacharma",
      "state_id": "1"
    },
    {
      "id": "3",
      "name": "Port Blair",
      "state_id": "1"
    }

如何使用nodeJs和mongoose將上述城市的json數據(只有一次)存儲到mongoDB中

解決方案1

請將 City.json 文件設為 City.js 並使用此解決方案,這是正確的做法

const citites = [{
      "id": "1",
      "name": "Bombuflat",
      "state_id": "1"
    },
    {
      "id": "2",
      "name": "Garacharma",
      "state_id": "1"
    },
    {
      "id": "3",
      "name": "Port Blair",
      "state_id": "1"
    }
]
module.exports = citites

在路線和您要插入的位置。 寫下這段代碼

 const cities = require('./City')
 // db.city.insertMany(cities)  using mongo client 
 // City.insertMany(cities)  using Mongoose
 console.log(cities)

解決方案2

請在 json 文件中將 City.json 設為數組,以便我們讀取孔文件並插入文檔

[{
  "id": "1",
  "name": "Bombuflat",
  "state_id": "1"
},{
  "id": "2",
  "name": "Garacharma",
  "state_id": "1"
},{
  "id": "3",
  "name": "Port Blair",
  "state_id": "1"
}]

const fs = require('fs');
let cityData = fs.readFileSync('City.json');  
let cities = JSON.parse(cityData);  
// db.city.insertMany(cities)  using mongo client 
// City.insertMany(cities)  using Mongoose
console.log(cities); 

您應該通過將主體作為 JSON 傳遞並將其保存到所需的 Mongo DB 集合來編寫發布 API。

Mongo DB 中的所有文檔都將保存為 JSON。

我希望你是 node js 和 mongo db 的新手。 請閱讀 nodeJs 文檔和 Mongo DB 文檔。

這將幫助您編寫您的第一個帖子 API

app.post('/city', (req, res) => {
const body = req.body();
City.save(body)
.then(response => {
  console.log('saved to mongo db', response);
  res.json(response);
})
.catch(error => {
  console.log('error in saving to mongo db', error);
  res.json(error);
});
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM