在Node.js中,Express框架一般被用來構建Web應用程序。處理JSON數據也是一件很常見的事情。本文將介紹如何使用Express來讀寫JSON文件。
讀取JSON文件
const express = require('express'); const fs = require('fs'); const app = express(); app.get('/data', (req, res) =>{ fs.readFile('./data.json', 'utf8', (err, data) =>{ if (err) throw err; res.send(JSON.parse(data)); }); }); app.listen(3000, () =>console.log('Server started!'));
以上代碼是一個使用Express讀取JSON文件的示例。首先,我們需要為應用程序創建一個Express實例。接著,我們使用app.get()方法為應用程序設定路由。當其收到GET請求時,它將從文件系統中讀取"data.json"文件。讀取完成后,使用JSON.parse()方法將其轉換為JavaScript對象,并通過res.send()方法將其返回。
寫入JSON文件
const express = require('express'); const fs = require('fs'); const app = express(); app.post('/data', express.json(), (req, res) =>{ const newData = req.body; fs.writeFile('./data.json', JSON.stringify(newData), 'utf8', (err) =>{ if (err) throw err; res.send('Data saved!'); }); }); app.listen(3000, () =>console.log('Server started!'));
以上代碼是一個使用Express寫入JSON文件的示例。在這個示例中,我們使用app.post()方法為應用程序設定路由。當其收到POST請求時,我們獲取請求中的JSON數據,然后使用fs.writeFile()方法將其寫入到"data.json"文件中。寫入完成后,使用res.sent()方法將文本"Data saved!"返回。
注意,在這個例子中,使用了中間件express.json()來解析請求中的JSON數據。中間件的執行順序很重要,如果它們在正確的順序中間配置,那么express.json()中間件將在寫入數據之前解析數據。
以上就是使用Express來讀寫JSON文件的介紹。使用Node.js和Express,操作JSON數據變得更加簡單了。希望這個例子對你有所幫助。