
웹은 기본적으로 프론트엔드(화면) ← 서버 ← 데이터베이스 순서로 연결되어 동작합니다.
이때, 프론트엔드가 서버와 데이터를 주고받기 위해 따라야 하는 통신 규칙이 REST입니다.
REST에는 대표적으로 다음과 같은 메서드가 있습니다.
API는 프론트엔드가 서버와 소통할 수 있도록 도와주는 인터페이스입니다.
예를 들어, 버튼을 클릭했을 때 서버로 요청을 보내고, 그 응답을 받아 화면에 표시할 수 있는 구조를 제공합니다.
서버에서는 데이터를 보통 JSON 형태로 보내줍니다.
{
"name": "dahyun",
"age": 24
}
그래서 프론트엔드에서는 다음과 같이 접근합니다.
data.name
data["age"]
JSON이 {키: 값} 구조라서, 자바스크립트로 다루기 매우 쉽습니다.
즉, REST API는 “REST 규칙을 지켜 요청을 보내고 응답을 받을 수 있는 주소(URL)”라고 이해하면 됩니다.
공공데이터를 활용할 때는 보통 아래와 같이 URL을 통해 서버에 데이터를 요청하고 데이터를 응답받습니다.

프론트엔드 개발자는 이렇게 외부 서버와 통신할 때 대부분 REST API 방식을 사용합니다.
정해진 URL 규칙 + HTTP 메서드로 요청을 보내고 응답 데이터를 화면에 표시합니다.
공공 API는 누구나 호출할 수 있는 구조이기 때문에 남용을 방지하고 사용량을 관리하기 위해 개인별 Key를 발급합니다. 요청 URL에는 보통 다음과 같이 포함됩니다.
...?serviceKey=발급받은_내_키
인증키(API Key)가 필요한 이유는 API 주소를 아무나 무한정 호출하는 상황을 막기 위해, 누가 얼마나 요청했는지 추적하기 위해서입니다.
즉, API Key는 이 요청이 어느 사용자에게서 온 것인지 확인하는 신분증 역할을 합니다.
그래서 각자 발급받은 Key로 요청해야 정상적으로 데이터를 받을 수 있습니다.
너무 유익해서 하트 두번 눌렀습니다