From b391c9b5004dac383047ae5d5867a10b7475269c Mon Sep 17 00:00:00 2001 From: NunoMCP Date: Tue, 4 Nov 2025 14:40:01 +0000 Subject: [PATCH 1/5] parse JSON at the end of the stream and use status code from the response Signed-off-by: NunoMCP --- .../pages/en/learn/getting-started/fetch.md | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/apps/site/pages/en/learn/getting-started/fetch.md b/apps/site/pages/en/learn/getting-started/fetch.md index 26cd99cd51f70..63efbe1fdbcf3 100644 --- a/apps/site/pages/en/learn/getting-started/fetch.md +++ b/apps/site/pages/en/learn/getting-started/fetch.md @@ -134,13 +134,12 @@ try { ```js import { Writable } from 'stream'; - import { stream } from 'undici'; async function fetchGitHubRepos() { const url = 'https://api.github.com/users/nodejs/repos'; - const { statusCode } = await stream( + await stream( url, { method: 'GET', @@ -149,35 +148,30 @@ async function fetchGitHubRepos() { Accept: 'application/json', }, }, - () => { + (res) => { let buffer = ''; return new Writable({ write(chunk, encoding, callback) { buffer += chunk.toString(); - + callback(); + }, + final(callback) { try { const json = JSON.parse(buffer); console.log( 'Repository Names:', json.map(repo => repo.name) ); - buffer = ''; } catch (error) { console.error('Error parsing JSON:', error); } - - callback(); - }, - final(callback) { - console.log('Stream processing completed.'); + console.log(`Response status: ${res.statusCode}`); callback(); }, }); } ); - - console.log(`Response status: ${statusCode}`); } fetchGitHubRepos().catch(console.error); From b926b56570a8e03cb6834e73fdb6a7e1ce1c4d11 Mon Sep 17 00:00:00 2001 From: NunoMCP Date: Tue, 4 Nov 2025 15:13:09 +0000 Subject: [PATCH 2/5] Add log Signed-off-by: NunoMCP --- apps/site/pages/en/learn/getting-started/fetch.md | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/site/pages/en/learn/getting-started/fetch.md b/apps/site/pages/en/learn/getting-started/fetch.md index 63efbe1fdbcf3..1b7c5558465ea 100644 --- a/apps/site/pages/en/learn/getting-started/fetch.md +++ b/apps/site/pages/en/learn/getting-started/fetch.md @@ -166,6 +166,7 @@ async function fetchGitHubRepos() { } catch (error) { console.error('Error parsing JSON:', error); } + console.log('Stream processing completed.'); console.log(`Response status: ${res.statusCode}`); callback(); }, From 18a17319f906a7901e77d3eb5ec23532b6da0f62 Mon Sep 17 00:00:00 2001 From: NunoMCP Date: Tue, 4 Nov 2025 17:23:44 +0000 Subject: [PATCH 3/5] Update apps/site/pages/en/learn/getting-started/fetch.md Co-authored-by: Aviv Keller Signed-off-by: NunoMCP --- apps/site/pages/en/learn/getting-started/fetch.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/site/pages/en/learn/getting-started/fetch.md b/apps/site/pages/en/learn/getting-started/fetch.md index 1b7c5558465ea..bb6492c310d7a 100644 --- a/apps/site/pages/en/learn/getting-started/fetch.md +++ b/apps/site/pages/en/learn/getting-started/fetch.md @@ -133,7 +133,8 @@ try { [Streams](https://nodejs.org/docs/v22.14.0/api/stream.html#stream) is a feature in Node.js that allows you to read and write chunks of data. ```js -import { Writable } from 'stream'; +import { Writable } from 'node:stream'; + import { stream } from 'undici'; async function fetchGitHubRepos() { From ad1a5f16c4f294bb86179ff9e65f6cf44d2c93d1 Mon Sep 17 00:00:00 2001 From: NunoMCP Date: Thu, 6 Nov 2025 15:58:36 +0000 Subject: [PATCH 4/5] make prettier happy Signed-off-by: NunoMCP --- apps/site/pages/en/learn/getting-started/fetch.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/site/pages/en/learn/getting-started/fetch.md b/apps/site/pages/en/learn/getting-started/fetch.md index bb6492c310d7a..49441370522b0 100644 --- a/apps/site/pages/en/learn/getting-started/fetch.md +++ b/apps/site/pages/en/learn/getting-started/fetch.md @@ -149,7 +149,7 @@ async function fetchGitHubRepos() { Accept: 'application/json', }, }, - (res) => { + res => { let buffer = ''; return new Writable({ From 268eea393ac28ca25ad9fa65012d11aa4f79ad3b Mon Sep 17 00:00:00 2001 From: NunoMCP Date: Fri, 7 Nov 2025 16:48:55 +0000 Subject: [PATCH 5/5] trigger build