Node.js 程式札記:核心模組 - 文件操作、網路請求與路徑處理

更新於 2024/10/02閱讀時間約 5 分鐘

Node.js 是一個功能強大的 JavaScript 執行環境,它內建的核心模組讓開發者能夠輕鬆處理檔案系統操作、網路請求和路徑管理等常見需求。本文將介紹三個常用的 Node.js 核心模組,並透過範例程式碼展示它們的基本用法,幫助你快速上手。

文件系統操作(fs模組)

fs 模組是 Node.js 中用於檔案系統操作的核心模組,提供了讀取、寫入、修改檔案等功能。

讀取檔案

使用fs.readFile()方法可以非同步讀取檔案內容:

const fs = require('fs');

fs.readFile('example.txt', 'utf8', (err, data) => {
if (err) {
console.error('讀取檔案時發生錯誤:', err);
return;
}
console.log('檔案內容:', data);
});

寫入檔案

使用fs.writeFile()方法可以將資料寫入檔案:

const fs = require('fs');

const content = '這是要寫入檔案的內容';

fs.writeFile('output.txt', content, (err) => {
if (err) {
console.error('寫入檔案時發生錯誤:', err);
return;
}
console.log('檔案寫入成功');
});

網路操作(http / https 模組)

http 和 https 模組允許 Node.js 創建伺服器和發送 HTTP 請求。

創建簡單的 HTTP 伺服器

使用http模組創建一個基本的Web伺服器:

const http = require('http');

const server = http.createServer((req, res) => {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello, World!');
});

server.listen(3000, () => {
console.log('伺服器運行在 http://localhost:3000/');
});

發送 HTTP 請求

使用 http 模組發送 GET 請求:

const http = require('http');

http.get('http://api.example.com/data', (res) => {
let data = '';

res.on('data', (chunk) => {
data += chunk;
});

res.on('end', () => {
console.log(JSON.parse(data));
});
}).on('error', (err) => {
console.error('請求發生錯誤:', err.message);
});

路徑處理(path模組)

path模組提供了處理檔案和目錄路徑的實用工具。

連接路徑

使用path.join()方法可以智能地連接路徑片段:

const path = require('path');

const fullPath = path.join('/home', 'user', 'documents', 'file.txt');
console.log(fullPath); // 輸出: /home/user/documents/file.txt

解析路徑

path.parse()方法可以解析路徑字串:

const path = require('path');

const pathInfo = path.parse('/home/user/documents/file.txt');
console.log(pathInfo);
// 輸出:
// {
// root: '/',
// dir: '/home/user/documents',
// base: 'file.txt',
// ext: '.txt',
// name: 'file'
// }

總結

本文介紹了 Node.js 的 fshttppath 三個核心模組,這些模組涵蓋了檔案讀寫、HTTP 伺服器建立和路徑處理等常見開發場景。掌握這些模組的基本用法,能讓你更有效率地處理後端開發中的各種需求。

avatar-img
60會員
91內容數
「梧笙」即「吾生」,意即我的生命,朋友都叫我「阿梧(Awu)」,高雄人。我喜歡學習新技能,從程式設計到網路工具,再到社群經營和影片剪輯。日常興趣是打遊戲、看動漫、讀小說和聽音樂。我會把這些興趣寫成文章,如果你有任何想法或問題,歡迎來信到我的郵箱 aowulife109@gmail.com
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
梧笙の領域展開 的其他內容
Express 是一個簡潔而靈活的 Node.js 網頁應用程式框架,本文將介紹 Express 的基礎知識,包括安裝、路由設定、中介層使用,以及如何搭配 EJS 模板引擎來渲染動態內容。
MongoDB 是一個靈活的 NoSQL 資料庫,這篇文章將帶你了解如何在 Node.js 中操作MongoDB 資料庫,包括基本連接、CRUD操作,以及如何使用 Mongoose ODM 來簡化資料庫操作。
在學習 Node.js 時,異步處理是其中一個非常重要的概念,因為Node.js是一個非阻塞I/O的運行環境,所以理解如何處理異步操作對於開發者來說至關重要。本篇文章將介紹 Node.js 中常見的三種異步處理方式:回調函式、Promise、以及 Async/Await。
由於 Node.js 其非同步和事件驅動的特性,Node.js 特別適合構建高效能的網絡應用程式。本文將介紹 Node.js 的三個基礎概念:事件驅動和非阻塞I/O、模組系統以及 npm 套件管理器。
對於剛開始學習程式設計或想要進一步了解後端開發的人來說,Node.js 是一個非常好的起點。本文將介紹 Node.js 的基本概念、優點以及應用場景,並提供如何在你的電腦上設置開發環境和實作一個簡單的 "Hello World" 範例。
Express 是一個簡潔而靈活的 Node.js 網頁應用程式框架,本文將介紹 Express 的基礎知識,包括安裝、路由設定、中介層使用,以及如何搭配 EJS 模板引擎來渲染動態內容。
MongoDB 是一個靈活的 NoSQL 資料庫,這篇文章將帶你了解如何在 Node.js 中操作MongoDB 資料庫,包括基本連接、CRUD操作,以及如何使用 Mongoose ODM 來簡化資料庫操作。
在學習 Node.js 時,異步處理是其中一個非常重要的概念,因為Node.js是一個非阻塞I/O的運行環境,所以理解如何處理異步操作對於開發者來說至關重要。本篇文章將介紹 Node.js 中常見的三種異步處理方式:回調函式、Promise、以及 Async/Await。
由於 Node.js 其非同步和事件驅動的特性,Node.js 特別適合構建高效能的網絡應用程式。本文將介紹 Node.js 的三個基礎概念:事件驅動和非阻塞I/O、模組系統以及 npm 套件管理器。
對於剛開始學習程式設計或想要進一步了解後端開發的人來說,Node.js 是一個非常好的起點。本文將介紹 Node.js 的基本概念、優點以及應用場景,並提供如何在你的電腦上設置開發環境和實作一個簡單的 "Hello World" 範例。
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
在這篇教學文章中,我們將展示如何使用 Node.js 建立一個簡單的伺服器,並解決常見的跨來源資源共享(CORS)問題,確保伺服器能夠接收並處理來自不同來源的資料。
Thumbnail
JSDoc 全名是 JavaScript Documentation,顧名思義是為 JavaScript 所使用的 API 文件,在程式碼內透過註解的方式撰寫,運行後 JSDoc 會自動掃描註解內容,並生成一份網頁版的文件,對於沒有使用 Typescript 開發的專案,也
※ 補充說明: ※ npm 常用指令: ◦ npm init–y:快速初始化一個新的 Node.js 並建立一個 package.json 文件的命令。 ◦ npm info 套件名稱 version:快速查詢指定 npm 套件的最新版本號。 ◦ npm install套件名稱:用來安裝
Thumbnail
Node.js是一個JavaScript運行環境。它使用了一個非阻塞、事件驅動的I/O模型,使其非常適合用於數據密集型的即時應用程序。簡單來說,Node.js允許你使用JavaScript來編寫伺服器端代碼。 nvm 安裝nvm Windows : 點擊 Releases · coreybut
Thumbnail
本章節將引導你如何建立一個TypeScript開發環境,這包括安裝Node.js、npm和TypeScript,建立一個TypeScript項目,設置編輯器,以及編寫和編譯TypeScript代碼。在完成這些步驟之後,你將能夠編寫、編譯和運行TypeScript代碼。
Thumbnail
本章節旨在介紹TypeScript的基本語法,包括一般結構、程式進入點、註解以及變數的定義和賦值。這些知識將幫助讀者瞭解TypeScript的基本架構,並且可以開始使用TypeScript進行開發。
Thumbnail
套件(Package)是將程式或程式庫進行組織、分發和共享的一種方式。在軟體開發中,套件通常包含了相關的程式碼、資源文件和元數據,並提供了統一的名稱空間和版本管理。
Thumbnail
因為最近想嘗試編碼風格,於是就選了一套比較"不嚴格"的輔助工具來摸索。 編輯器 VS CODE 框架 VUE3 打包工具 VITE 編碼風格 Standard 環境 version { "nodejs":"v18.18.0", "npm":"9.8.1" }
※ Express 專案步驟筆記清單 Node.js 環境建置核對 新增專案資料夾 設定 package.json npm init -y 設定程式入口為 app.js 安裝 Express:npm install express 設定主程式 app.js 建構應用程式伺服器 設定
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
在這篇教學文章中,我們將展示如何使用 Node.js 建立一個簡單的伺服器,並解決常見的跨來源資源共享(CORS)問題,確保伺服器能夠接收並處理來自不同來源的資料。
Thumbnail
JSDoc 全名是 JavaScript Documentation,顧名思義是為 JavaScript 所使用的 API 文件,在程式碼內透過註解的方式撰寫,運行後 JSDoc 會自動掃描註解內容,並生成一份網頁版的文件,對於沒有使用 Typescript 開發的專案,也
※ 補充說明: ※ npm 常用指令: ◦ npm init–y:快速初始化一個新的 Node.js 並建立一個 package.json 文件的命令。 ◦ npm info 套件名稱 version:快速查詢指定 npm 套件的最新版本號。 ◦ npm install套件名稱:用來安裝
Thumbnail
Node.js是一個JavaScript運行環境。它使用了一個非阻塞、事件驅動的I/O模型,使其非常適合用於數據密集型的即時應用程序。簡單來說,Node.js允許你使用JavaScript來編寫伺服器端代碼。 nvm 安裝nvm Windows : 點擊 Releases · coreybut
Thumbnail
本章節將引導你如何建立一個TypeScript開發環境,這包括安裝Node.js、npm和TypeScript,建立一個TypeScript項目,設置編輯器,以及編寫和編譯TypeScript代碼。在完成這些步驟之後,你將能夠編寫、編譯和運行TypeScript代碼。
Thumbnail
本章節旨在介紹TypeScript的基本語法,包括一般結構、程式進入點、註解以及變數的定義和賦值。這些知識將幫助讀者瞭解TypeScript的基本架構,並且可以開始使用TypeScript進行開發。
Thumbnail
套件(Package)是將程式或程式庫進行組織、分發和共享的一種方式。在軟體開發中,套件通常包含了相關的程式碼、資源文件和元數據,並提供了統一的名稱空間和版本管理。
Thumbnail
因為最近想嘗試編碼風格,於是就選了一套比較"不嚴格"的輔助工具來摸索。 編輯器 VS CODE 框架 VUE3 打包工具 VITE 編碼風格 Standard 環境 version { "nodejs":"v18.18.0", "npm":"9.8.1" }
※ Express 專案步驟筆記清單 Node.js 環境建置核對 新增專案資料夾 設定 package.json npm init -y 設定程式入口為 app.js 安裝 Express:npm install express 設定主程式 app.js 建構應用程式伺服器 設定