Node.js是一個非常流行的平臺,它支持使用JavaScript來進行服務器端編程。Node.js中的Express框架是用于構建Web應用程序的最受歡迎的框架之一,它非常易于使用。在這篇文章中,我們將講解如何使用Express來讀寫本地JSON文件。
Express可以使用Node.js中的fs模塊來訪問本地文件系統。我們可以使用fs.readFile()函數來讀取JSON文件,使用fs.writeFile()函數來寫入JSON文件。
const express = require('express'); const fs = require('fs'); const app = express(); app.get('/', (req, res) =>{ // 讀取JSON文件 fs.readFile('data.json', 'utf8', (err, data) =>{ if (err) { console.error(err); res.status(500).send('Server Error'); } else { // 將JSON字符串轉換為JSON對象 const jsonData = JSON.parse(data); res.send(jsonData); } }); }); app.post('/', (req, res) =>{ // 從POST請求中獲取需要寫入JSON文件的數據 const newData = req.body; // 讀取JSON文件 fs.readFile('data.json', 'utf8', (err, data) =>{ if (err) { console.error(err); res.status(500).send('Server Error'); } else { // 將JSON字符串轉換為JSON對象 const jsonData = JSON.parse(data); // 將新數據添加到JSON對象中 jsonData.push(newData); // 將JSON對象轉換為JSON字符串 const newJsonData = JSON.stringify(jsonData); // 寫入JSON文件 fs.writeFile('data.json', newJsonData, (err) =>{ if (err) { console.error(err); res.status(500).send('Server Error'); } else { res.send('Data written to file'); } }); } }); }); app.listen(3000, () =>{ console.log('Server listening on port 3000'); });
上面的代碼使用了Express的get和post方法,分別用于讀取JSON文件和寫入JSON文件。在讀取JSON文件時,我們從文件系統中讀取JSON字符串,然后將其轉換為JSON對象并通過res.send()方法將其發送到客戶端。在寫入JSON文件時,我們首先從POST請求中獲取新的數據,然后從文件系統中讀取JSON字符串。接著將新數據添加到JSON對象中,將JSON對象轉換為JSON字符串,并通過fs.writeFile()方法將其寫入到文件系統中。
總之,通過使用Express和Node.js的fs模塊,我們可以非常方便地讀寫JSON文件。這為我們開發Web應用程序提供了極大的便利。