GET 요청으로 서버에서 JSON 데이터를 받아 파싱하는 가장 기본적인 레시피입니다. 읽기 전용이며 본문을 보내지 않습니다.
GET 요청으로 서버에서 JSON 데이터를 받아 파싱하는 가장 기본적인 레시피입니다. 읽기 전용이며 본문을 보내지 않습니다.
curl https://api.example.com/users/1 \
-H 'Accept: application/json'const res = await fetch('https://api.example.com/users/1', {
headers: { Accept: 'application/json' }
});
if (!res.ok) throw new Error(`HTTP ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get('https://api.example.com/users/1',
headers={'Accept': 'application/json'})
res.raise_for_status()
data = res.json()
print(data)`Accept: application/json` 헤더로 원하는 표현(representation)을 서버에 알립니다. 대부분의 API는 없어도 JSON을 주지만, 콘텐츠 협상(content negotiation)을 지원하는 서버에서는 XML 대신 JSON을 확실히 받기 위해 명시하는 것이 안전합니다.
GET은 안전(safe)하고 멱등(idempotent)하므로 같은 요청을 여러 번 보내도 서버 상태가 바뀌지 않습니다. 따라서 브라우저·프록시·CDN이 자유롭게 캐시할 수 있습니다.
응답을 파싱하기 전에 반드시 상태 코드를 확인하세요. `fetch`는 404·500 같은 실패에도 예외를 던지지 않으므로 `res.ok`를 직접 검사해야 하고, `requests`는 `raise_for_status()`로 4xx·5xx를 예외로 승격할 수 있습니다.