[typescript] 다중 타입을 이용하여 타입스크립트에서 비동기 처리를 다루는 방법은 무엇인가요?
1. Promise와 Union 타입을 활용한 비동기 처리 방법
타입스크립트에서 다중 타입을 활용하여 비동기 처리를 다루는 방법 중 하나는 Promise
와 Union
타입을 조합하는 것입니다. 예를 들어, 다음과 같은 상황에서 유용하게 활용됩니다.
type MyResponseType = { success: true, data: string } | { success: false, error: string };
function fetchData(): Promise<MyResponseType> {
// 비동기 작업 수행
}
위 예제에서 MyResponseType
는 success
필드에 따라 다른 타입을 가집니다. 이를 활용해서 비동기 함수의 반환 타입을 정의할 수 있습니다.
2. Async/Await를 다루는 다중 타입
async/await
를 사용할 때도 다중 타입을 활용할 수 있습니다. 예를 들어, 다음과 같이 Promise
를 반환하는 함수를 async
함수 안에서 처리할 때 유용합니다.
type MyData = string | Error;
async function fetchData(): Promise<MyData> {
try {
const response = await fetch('https://example.com/data');
const data = await response.json();
return data;
} catch (error) {
return new Error('Failed to fetch data');
}
}
위의 예제에서 MyData
는 string
또는 Error
를 가질 수 있는 다중 타입으로 정의되어 있습니다.
3. Github Capture The Flag (CTF) 리포지토리
최근에 깃허브에 Django 기반의 Capture The Flag (CTF) 웹 애플리케이션을 오픈소스로 공개했습니다. 이 CTF 리포지토리에 대한 자세한 내용을 확인하려면 여기를 방문해주세요.
타입스크립트에서 다중 타입을 이용하여 비동기 처리를 다루는 방법에 대한 간략한 설명은 위와 같습니다. 다른 궁금한 점이 있으시다면 언제든 물어보세요!