답변:
HTTP에는 이에 대한 Authorization
헤더가 있습니다.
일반적으로 사용자의 자격 증명을 제공하는 데 사용되지만 API의 경우 클라이언트의 ID와 해당 API 키를 포함 할 수 있습니다.
몇 가지 이점이 있습니다.
다른 프레임 워크에서 지원합니다. 많은 프레임 워크는 Authorization
인증을 수행하기 위해 헤더를 기대 합니다. 사용하지 않으면 추가 코드를 작성하여 해당 프레임 워크에 사용자 정의 값을 제공합니다.
다른 도구에서 지원합니다. 예를 들어 CURL.
"WTF는 어디에서이 API 키를 찾거나 넣습니까?" 팀에 합류하는 새로운 개발자 (또는 API를위한 새로운 클라이언트를 설계하는 개발자)로부터
당신은 다음과 같은 HTTP 상태 코드 정의를 사용할 수 있습니다 401 Unauthorized
, 어떤을 위해 :
응답에는 반드시 WWW-Authenticate 헤더 필드가 포함되어야합니다. [...] 클라이언트는 적절한 Authorization 헤더 필드로 요청을 반복 할 수 있습니다.
요청 본문으로 옮기면 빠르게 고통 스러울 수 있습니다. 대부분의 프레임 워크와 도구는 요청에 본문을 추가하는 것이 매우 간단하지 않으므로 API를 필요 이상으로 어렵게 만들 수 있습니다.