From 8310b2b54b90a8304490129e32da55f64ce41aad Mon Sep 17 00:00:00 2001 From: Soyeon Choe Date: Mon, 12 Aug 2024 12:14:58 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EC=9E=98=20=EB=AA=BB=EB=90=9C=20?= =?UTF-8?q?=EC=98=88=EC=8B=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...ecting-the-Right-Tool-for-HTTP-Requests.md | 42 +++++++++---------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/Aug/article/Axios-vs-Fetch-API:-Selecting-the-Right-Tool-for-HTTP-Requests.md b/Aug/article/Axios-vs-Fetch-API:-Selecting-the-Right-Tool-for-HTTP-Requests.md index c4b85c6..c6205d2 100644 --- a/Aug/article/Axios-vs-Fetch-API:-Selecting-the-Right-Tool-for-HTTP-Requests.md +++ b/Aug/article/Axios-vs-Fetch-API:-Selecting-the-Right-Tool-for-HTTP-Requests.md @@ -281,21 +281,21 @@ Axios는 `axios.all()` 메서드를 제공하여 여러 요청을 동시에 할 ```jsx const axios = require('axios'); -// Define the base URL for the request +// 요청의 기본 URL 정의 const baseURL = 'https://jsonplaceholder.typicode.com/todos'; -// Define the URLs for the requests +// 요청을 위한 URL 정의 const urls = [`${baseURL}/1`, `${baseURL}/2`, `${baseURL}/3`]; -// Create an array of Axios request promises +// Axios 요청 프라미스 배열 생성 const axiosRequests = urls.map((url) => axios.get(url)); -// Send multiple requests simultaneously using `axios.all()` +// `axios.all()`을 사용하여 여러 요청을 동시에 전송 axios .all(axiosRequests) .then( axios.spread((...responses) => { - // Handle responses from all requests + // 모든 요청의 응답 처리 responses.forEach((response, index) => { console.log(`Response from ${urls[index]}:`, response.data); }); @@ -311,28 +311,28 @@ Fetch를 사용하여 동일한 결과를 얻기 위해서는 내장된 `Promise 다음은 Fetch를 사용하여 동시에 HTTP 요청을 보내는 방법입니다: ```jsx -const axios = require('axios'); - -// 요청의 기본 URL 정의 +// 요청할 base URL 정의 const baseURL = 'https://jsonplaceholder.typicode.com/todos'; -// 요청을 위한 URL 정의 +// 요청할 URLs 정의 const urls = [`${baseURL}/1`, `${baseURL}/2`, `${baseURL}/3`]; -// Axios 요청 프라미스 배열 생성 -const axiosRequests = urls.map((url) => axios.get(url)); +// fetch 요청의 프로미스를 저장할 배열 생성 +const fetchRequests = urls.map((url) => fetch(url)); -// `axios.all()`을 사용하여 여러 요청을 동시에 전송 -axios - .all(axiosRequests) - .then( - axios.spread((...responses) => { - // 모든 요청의 응답 처리 - responses.forEach((response, index) => { - console.log(`Response from ${urls[index]}:`, response.data); +// `Promise.all()`을 사용하여 여러 요청을 동시에 보냄 +Promise.all(fetchRequests) + .then((responses) => { + // 모든 요청의 응답을 처리 + responses.forEach((response, index) => { + if (!response.ok) { + throw new Error(`Request ${urls[index]} failed with status ${response.status}`); + } + response.json().then((data) => { + console.log(`Response from ${urls[index]}:`, data); }); - }) - ) + }); + }) .catch((error) => { console.error('Error fetching data:', error.message); });