| Name | Type | Description | Example |
|---|---|---|---|
| Name | Type | Description | Example |
|---|---|---|---|
| Name | Description | Example |
|---|---|---|
| Host | 요청 대상 서버의 도메인 이름 | api.example.com |
| Content-Type | 요청 본문의 데이터 타입 지정 | application/json |
| Accept | 클라이언트가 원하는 응답 데이터의 미디어 타입 지정 | application/hal+json; q=0.9, application/json; q=0.8 |
| User-Agent | 클라이언트(브라우저, 앱 등) 정보 | Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) |
| Accept-Encoding | 지원하는 압축 방식 | gzip, deflate, br |
| Accept-Language | 선호하는 응답 언어 | ko,en-US;q=0.9,en;q=0.8 |
| Origin | CORS 요청 시 요청을 보낸 출처 | https://frontend.example.com |
| Referer | 현재 요청을 유발한 이전 페이지의 URL | https://frontend.example.com/profile |
| Authorization | 인증 정보 | Bearer <Header>.*<Payload>*.*<Signature>* |
| Cookie | 상태 관리 | session_id=abc123; theme=dark |
| Strict-Transport-Security | HTTPS 통신 강제 | max-age=31536000; includeSubDomains |
Authorization Header
Field Type Description Example algString 서명 알고리즘 HS256 typString 토큰 타입 JWT Authorization Payload
Claim Type Description Example issString URI 발급자. 토큰의 출처 https://accounts.google.com subString 주제. 소유자. 사용자 ID account_123 또는 service-frontend audString String[] 대상자 expUnix Timestamp 만료 시간 1716123456 nbfUnix Timestamp Not Before (활성 시작 시간) 1716120000 iatUnix Timestamp 발급 시간 (Issued At) 1716110000 jtiString JWT ID (고유 식별자) uuid-1234 scopeString RFC 6749 OAuth 2.0 권한 범위 “read:user write:post admin” roles(public claim) String[] de facto standard 역할 기반 인증 (RBAC) ["admin", "editor"] permissions(private claim) String[] de facto standard 세밀한 권한 부여 (PBAC) ["post:delete", "comment:edit"]
| Name | Type | Description | Example |
|---|---|---|---|
| String | 인증 요청 이메일 | abc123@gmail.com |
/api/auth/email/challengeHTTP/2 POST /api/auth/email/challenge
Host: api.inssider.com
Authorization: Bearer *<JWT>*
Content-Type: application/json
Accept: application/hal+json; q=0.9, application/json; q=0.8
Origin: <https://inssider.vercel.app>
{
"email": "abc123@gmail.com",
}
// 이메일 `abc123@gmail.com`으로 6자리 정수형 난수가 전달됨