"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Promise.all을 사용하여 URL 배열에서 텍스트 데이터를 가져오고 구문 분석하는 방법은 무엇입니까?

Promise.all을 사용하여 URL 배열에서 텍스트 데이터를 가져오고 구문 분석하는 방법은 무엇입니까?

2024년 11월 14일에 게시됨
검색:971

How to Fetch and Parse Text Data from an Array of URLs with Promise.all?

Promise.all을 사용하여 URL 배열 가져오기

Promise.all을 활용하여 URL 집합에서 텍스트 데이터 배열을 검색하려면 적합한 접근 방식입니다. 이 작업을 효과적으로 수행하는 방법은 다음과 같습니다.

URL 문자열 배열이 있다고 가정합니다.

var urls = ['1.txt', '2.txt', '3.txt']; // Text files containing "one", "two", "three"

원하는 출력은 텍스트 콘텐츠의 배열입니다:

var text = ['one', 'two', 'three'];

Promise.all을 사용하면 여러 비동기 작업을 연결할 수 있습니다. 이 경우 먼저 각 URL을 가져온 다음 각 응답에서 텍스트를 추출하는 데 사용할 수 있습니다.

Promise.all(urls.map(url => fetch(url)))
  .then(responses =>
    Promise.all(responses.map(res => res.text()))
  )
  .then(texts => {
    // ...
  });

위 코드에서 Promise.all은 두 번 사용됩니다. 한 번은 모든 URL 가져오기를 시작하고 두 번째는 각 응답에서 텍스트 콘텐츠를 가져옵니다.

An 두 작업을 단일 Promise.all 체인으로 결합하는 대체 접근 방식은 다음과 같이 달성할 수 있습니다.

Promise.all(urls.map(url =>
  fetch(url)
    .then(resp => resp.text())
))
.then(texts => {
  // ...
});

또한 async/await를 사용하여 이 코드를 더욱 단순화할 수 있습니다.

const texts = await Promise.all(urls.map(async url => {
  const resp = await fetch(url);
  return resp.text();
}));

이 두 접근 방식 모두 Promise.all을 효과적으로 활용하여 URL 배열을 가져오고 관련 텍스트 콘텐츠를 추출하는 원하는 결과를 얻습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3