본 글은 무료 Gemini를 통해서 작성된 자료입니다.
보통 뒷단에서 쓰는 것으로 예상
새 응답 개체를 생성하여 호출자에게 다시 보내기 전에 속성 및 본문 콘텐츠(data.status or header etc)를 사용자 지정할 수 있습니다.
클라이언트에 보내기 전에 응답 데이터나 헤더를 조작해야 할 때 유용.
fetch('/data')
.then(response => {
if (!response.ok) {
return new Response('Error fetching data', { status: 500, statusText: 'Internal Server Error' }); }
return response.clone(); // Create a copy of the original response
})
.then(response => response.json())
.catch(error => console.error(error));
async
function fetchData() {
try{
const response = await fetch('/data');
if(!response.ok) {
throw new Error('Error fetching data');
}
const data = await response.json();
return new Response(JSON.stringify(data), {
status : 200,
statusText : 'OK'
});
}
catch (error) {
return new Response(error.message, {
status: 500,
statusText : 'Internal Server Error'
});
}
}
타인의 코드를 보다가 궁금해서 찾아봄
'나의 FE피봇이야기 > Javascript' 카테고리의 다른 글
[JS] JSON.stringify and JSON.parse 차이 (0) | 2024.05.07 |
---|---|
[JS/Type] interface and type (0) | 2024.05.02 |
[JS/Type] 더 명확한 작성법 함수 작성법 (0) | 2024.05.01 |
[JS/Type] void (update : 2024.04) (0) | 2024.04.30 |
[JS] How Promise works (0) | 2024.04.09 |