JavaScript에서 특정 작업을 "동시에" 처리할 수 있도록 해주는 함수
JavaScript에서 네트워크 요청을 보내고 응답을 받기 위해 사용되는 비동기 함수.
JavaScript에서 비동기 함수를 선언할 때 사용되는 키워드
async function myAsyncFunction() {
// 비동기 작업 수행
return someValue; // 비동기 작업의 결과를 반환할 수 있음
}
async function fetchData() {
return 'Hello, async!';
}
fetchData().then(data => {
console.log(data); // 'Hello, async!' 출력
});
async function fetchData() {
const response = await fetch('https://api.example.com/data');
const data = await response.json();
return data;
}
fetchData().then(data => {
console.log(data); // 받아온 JSON 데이터를 출력
}).catch(error => {
console.error('Error fetching data:', error);
});
웹 브라우저에서 제공하는 내장 API
// GET 요청 예제
fetch('https://api.example.com/data')
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json(); // JSON 형식으로 파싱된 데이터 반환
})
.then(data => {
console.log(data); // 받아온 데이터 출력
})
.catch(error => {
console.error('Error fetching data:', error);
});
// POST 요청 예제
fetch('https://api.example.com/post', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({ key: 'value' }),
})
.then(response => response.json())
.then(data => {
console.log('Success:', data);
})
.catch(error => {
console.error('Error:', error);
});
JavaScript와 Node.js를 위한 Promise 기반 HTTP 클라이언트 라이브러리
// axios를 이용한 GET 요청 예제
axios.get('https://api.example.com/data')
.then(response => {
console.log(response.data); // 서버에서 받아온 데이터 출력
})
.catch(error => {
console.error('Error fetching data:', error);
});
// axios를 이용한 POST 요청 예제
axios.post('https://api.example.com/post', { data: 'example' })
.then(response => {
console.log(response.data); // 서버에서 받아온 응답 데이터 출력
})
.catch(error => {
console.error('Error posting data:', error);
});