iT邦幫忙

鐵人檔案

2026 iThome 鐵人賽
回列表
JavaScript

Learn HTTP With JS(2) 系列

前 20 篇會介紹 Node.js http 模組的架構,一路涵蓋整條繼承鍊,從 EventEmitter、stream、net.Socket 講到 http 模組本身,讓讀者在以後在使用 Node.js 寫 HTTP client & server 的時候,會更了解其底層架構

後 10 篇會是 10 個獨立的主題,涵蓋了我在真實世界遇到的各種情境,包含 Link header、Content-Disposition 以及 100-continue 等等,從真實場景出發,讓讀者更能貼近實務

參賽天數 24 天 | 共 24 篇文章 | 0 人訂閱 訂閱系列文 RSS系列文
DAY 1

搞懂 Node.js EventEmitter:從基本用法到 error、promise rejection 陷阱

今年我延續了 2025 iThome 鐵人賽的 Learn HTTP With JS,將會繼續撰寫第 31 ~ 60 篇關於 HTTP 的文章 前言 不管是寫前...

DAY 2

stream 入門:Readable、Writable、Duplex(附 HTTP 實例)

Types of streams stream 有分四種 Writable:可寫 Readable:可讀 Duplex:可讀寫 Transform:這...

DAY 3

stream.Writable 生命週期

前言 這篇會把 stream.Writable 分多個生命週期階段來拆解 生命週期 1:初始化 生命週期 2:寫入資料 生命週期 3:結束 生命...

DAY 4

stream.Writable 記憶體管理、效能優化、錯誤處理

前言 我曾經以為寫入資料就是一直 write 下去就好 const myWritable = getWritableStreamSomehow(); myWri...

DAY 5

stream.Readable 生命週期

前言 這篇會把 stream.Readable 分多個生命週期階段來拆解 生命週期 1:初始化 生命週期 2:運作 - 兩種讀取模式的切換 生命週期...

DAY 6

stream.Readable 錯誤處理與比較解析

記憶體管理:backpressure 與 highWaterMark 當讀取 read() 跟寫入 push(chunk) 的速度都是一致的 this.push...

DAY 7

stream objectMode 與 pipe 實戰教學

encode & decode 我們之前的範例都是寫 string 進 internal buffer,沒有指定任何 encoding 或是 decod...

DAY 8

Node.js net.Socket 教學:TCP 連線應用

前言 Node.js 的 net.Socket 是一個 TCP (Layer 4) 的抽象 & 封裝,讓開發者不必理解 TCP 的架構,直接使用封裝好的...

DAY 9

Node.js TCP Client Socket 生命週期:lookup、connect 事件

前言 TCP socket 分兩種 TCP client socket: 主動去連別人 TCP server socket: 開著 port 等別人連 這篇...

DAY 10

深入 net.Socket:4-way handshake、socket.end vs destroy 差異

前言 承接上一篇 Node.js TCP Client Socket 生命週期,接下來要介紹的是 TCP client socket 跟 server sock...

陳昱昇(痛不昱昇)的收藏
陳昱昇(痛不昱昇)的追蹤
陳昱昇(痛不昱昇)的Like
陳昱昇(痛不昱昇)的紀錄