5. Message Routing

HTTP μš”μ²­ λ©”μ‹œμ§€ λΌμš°νŒ…μ€ λŒ€μƒ λ¦¬μ†ŒμŠ€, ν΄λΌμ΄μ–ΈνŠΈμ˜ ν”„λ½μ‹œ ꡬ성 및 μΈλ°”μš΄λ“œ 컀λ„₯μ…˜μ˜ μ„€μ • λ˜λŠ” μž¬μ‚¬μš©μ„ κΈ°μ€€μœΌλ‘œ 각 ν΄λΌμ΄μ–ΈνŠΈμ— μ˜ν•΄ κ²°μ •λœλ‹€.

5.1 Identifying a Target Resource

λŒ€λΆ€λΆ„μ˜ HTTP ν΄λΌμ΄μ–ΈνŠΈλŠ” λ²”μš© μ›Ή λΈŒλΌμš°μ €μ™€ λ™μΌν•œ λ¦¬μ†ŒμŠ€ 식별 λ©”μ»€λ‹ˆμ¦˜κ³Ό ꡬ성 κΈ°μˆ μ— μ˜μ‘΄ν•œλ‹€.

5.2 Connecting Inbound

1.λŒ€μƒ URIκ°€ κ²°μ •λ˜λ©΄ ν΄λΌμ΄μ–ΈνŠΈλŠ” λ°”λžŒμ§ν•œ μ˜λ―Έλ‘ μ„ λ‹¬μ„±ν•˜κΈ° μœ„ν•΄ λ„€νŠΈμ›Œν¬ μš”μ²­μ΄ ν•„μš”ν•œμ§€ μ—¬λΆ€λ₯Ό κ²°μ •ν•΄μ•Ό ν•˜λ©°, κ·Έλ ‡λ‹€λ©΄ μš”μ²­μ΄ ν•„μš”ν•œ 경우 어디에 μš”μ²­λ˜λŠ” μœ„μΉ˜λ₯Ό κ²°μ •ν•΄μ•Ό ν•œλ‹€.

2. ν΄λΌμ΄μ–ΈνŠΈμ— μΊμ‹œ [RFC7234] κ°€ 있고 μš”μ²­μ΄ 이에 μ˜ν•΄ 좩쑱될 수 μžˆλŠ” 경우, 일반적으둜 μš”μ²­μ€ λ¨Όμ € ν•΄λ‹Ή μΊμ‹œλ‘œ μ „λ‹¬λœλ‹€.

3. μš”μ²­μ΄ μΊμ‹œμ— μ˜ν•΄ μΆ©μ‘±λ˜μ§€ μ•ŠμœΌλ©΄ 일반 ν΄λΌμ΄μ–ΈνŠΈλŠ” ν•΄λ‹Ή ꡬ성을 ν™•μΈν•˜μ—¬ μš”μ²­μ„ μΆ©μ‘±ν•˜κΈ° μœ„ν•΄ ν”„λ‘μ‹œ μ‚¬μš©ν• μ§€ μ—¬λΆ€λ₯Ό κ²°μ •ν•œλ‹€. ν”„λ‘μ‹œ ꡬ성은 κ΅¬ν˜„μ— 따라 λ‹€λ₯΄μ§€λ§Œ URI 접두사 일치, 선택적 κΆŒν•œ 일치 λ˜λŠ” λ‘˜ 닀에 κΈ°λ°˜ν•˜λŠ” κ²½μš°κ°€ 많으며, ν”„λ½μ‹œ μžμ²΄λŠ” λŒ€κ°œ "http" λ˜λŠ” "https" URI둜 μ‹λ³„λœλ‹€. ν”„λ‘μ‹œ 적용 κ°€λŠ₯ν•œ 경우 ν΄λΌμ΄μ–ΈνŠΈλŠ” ν•΄λ‹Ή ν”„λ‘μ‹œμ— λŒ€ν•œ 컀λ„₯μ…˜μ„ 섀립(λ˜λŠ” μž¬μ‚¬μš©) ν•˜μ—¬ μΈλ°”μš΄λ“œλ₯Ό μ—°κ²°ν•œλ‹€.

4. ν”„λ‘μ‹œκ°€ μ μš©λ˜μ§€ μ•ŠλŠ” 경우, 일반적인 ν΄λΌμ΄μ–ΈνŠΈλŠ” λŒ€μƒ URI 의 schemeκ³Ό κ΄€λ ¨λœ ν•Έλ“€λŸ¬ 루틴을 ν˜ΈμΆœν•˜μ—¬ λŒ€μƒ λ¦¬μ†ŒμŠ€μ— λŒ€ν•œ κΆŒν•œμ— 직접 μ—°κ²°ν•œλ‹€.

5.3 Request Target

ν•œλ²ˆ μΈλ°”μš΄λ“œ 컀λ„₯μ…˜μ„ μ–»μœΌλ©΄, ν΄λΌμ΄μ–ΈνŠΈλŠ” λŒ€μƒ URIμ—μ„œ νŒŒμƒλœ request-targetκ³Ό ν•¨κ»˜ HTTP μš”μ²­ λ©”μ‹œμ§€(Section 3)λ₯Ό 보낸닀. μš”μ²­ν•˜λŠ” 방법과 ν”„λ‘μ‹œμ— λŒ€ν•œ μš”μ²­μΈμ§€ 여뢀에 따라 request-target ν˜•μ‹μ€ λ„€ κ°€μ§€λ‘œ κ΅¬λΆ„λœλ‹€.

request-target = origin-form / absolute-form / authority-form / asterisk-form

5.3.1 origin-form

λŒ€λΆ€λΆ„μ˜ request-target의 곡톡적 양식은 origin-form이닀.

origin-form = absolute-path [ "?" query ]

  • CONNECT λ˜λŠ” μ„œλ²„ 전체 OPTIONS μš”μ²­ 외에 μ›μ„œλ²„μ— 직접 μš”μ²­ν•  λ•Œ(μ•„λž˜μ— μžμ„Ένžˆ μ„€λͺ… 된 λŒ€λ‘œ) ν΄λΌμ΄μ–ΈνŠΈλŠ” λŒ€μƒ URI의 μ ˆλŒ€ 경둜 및 쿼리 ꡬ성 μš”μ†Œλ§Œ request-target으둜 보내야 ν•œλ‹€.(MUST)

  • λŒ€μƒ URI의 경둜 ꡬ성 μš”μ†Œκ°€ λΉ„μ–΄ 있으면 ν΄λΌμ΄μ–ΈνŠΈκ°€ request-target의 origin-form 내에 경둜둜 β€œ/" λ₯Ό λ°˜λ“œμ‹œ 보내야 ν•œλ‹€.(MUST)

예λ₯Ό λ“€μ–΄, ν΄λΌμ΄μ–ΈνŠΈλŠ” http://www.example.org/where?q=now 같은 μ‹λ³„λœ λ¦¬μ†ŒμŠ€μ˜ ν‘œμ‹œλ‘œ κ²€μƒ‰ν•˜λŠ” 것을 λ°”λž„ 것이닀.

μ›μ„œλ²„λ‘œλΆ€ν„° 직접 포트 80에 λŒ€ν•œ TCP 컀λ„₯μ…˜μ„ μ—΄κ³ (λ˜λŠ” μž¬μ‚¬μš©ν•˜κ³ ) 호슀트 "www.example.org"κ³Ό λ‹€μŒμ€„μ„ λ³΄λƒˆμ„ 것이닀.

GET /where?q=now HTTP/1.1 Host: www.example.org

5.3.2 absolute-form

ν”„λ‘μ‹œμ— μš”μ²­μ„ ν•  λ•Œ, CONNECT λ˜λŠ” μ„œλ²„ μΈ‘ OPTIONS μš”μ²­μ„ μ œμ™Έν•˜κ³  (μ•„λž˜μ— μžμ„Ένžˆ μ„€λͺ…λœ λŒ€λ‘œ), ν΄λΌμ΄μ–ΈνŠΈλŠ” absolute-form을 request-target으둜 λŒ€μƒ URIλ₯Ό 보내야 ν•œλ‹€.

GET http://www.example.org/pub/WWW/TheProject.html HTTP/1.1

  • 일뢀 미래의 HTTP λ²„μ „μ—μ„œ λͺ¨λ“  μš”μ²­μ„ μœ„ν•œ absolute-form으둜 λ³€ν™˜ν•˜λ €λ©΄, HTTP/1.1 ν΄λΌμ΄μ–ΈνŠΈκ°€ ν”„λ‘μ‹œμ—λ§Œ μš”μ²­μœΌλ‘œ absolute-form을 μ „μ†‘ν•˜λ”λΌλ„, μ„œλ²„λŠ” μš”μ²­μ—μ„œ absolute-formλ₯Ό μˆ˜μš©ν•΄μ•Ό ν•œλ‹€.(MUST)

5.3.3 authority-form

ν•˜λ‚˜ λ˜λŠ” κ·Έ μ΄μƒμ˜ ν”„λ‘μ‹œλ“€μ„ 톡해 터널과 μ„€λ¦½ν•˜κΈ° μœ„ν•΄ CONNECT μš”μ²­μ„ ν•  λ•Œ, ν΄λΌμ΄μ–ΈνŠΈλŠ” λ°˜λ“œμ‹œ λŒ€μƒ URI의 κΆŒν•œ κ΅¬μ„±μš”μ†Œλ§Œ request-target으둜 보내야 ν•œλ‹€. (MUST)(μ–΄λ–€ userinfoλ‚˜ β€œ@β€œ 기호λ₯Ό μ œμ™Έν•˜κ³ )

CONNECT www.example.com:80 HTTP/1.1

5.3.4 asterisk-form

request-target의 asterisk-form은 μ„œλ²„ 전체 OPTIONS μš”μ²­μ—μ„œλ§Œ μ‚¬μš©λœλ‹€.

  • ν΄λΌμ΄μ–ΈνŠΈκ°€ μ„œλ²„ 전체에 λŒ€ν•΄ OPTIONS μš”μ²­μ„ ν•˜κ³ μž ν•  λ•Œ, μ„œλ²„μ˜ νŠΉμ •ν•œ λͺ…λͺ…λœ λ¦¬μ†ŒμŠ€μ™€λŠ” λ°˜λŒ€λ‘œ, ν΄λΌμ΄μ–ΈνŠΈλŠ” λ°˜λ“œμ‹œ β€œ*” (%x2A)만 request-target으둜 보내야 ν•œλ‹€.(MUST)

OPTIONS * HTTP/1.1

  • ν”„λ‘μ‹œκ°€ URI에 빈 κ²½λ‘œκ°€ 있고 쿼리 ꡬ성 μš”μ†Œκ°€ μ—†λŠ” request-target의 absolute-formκ³Ό OPTIONS μš”μ²­μ„ μˆ˜μ‹ ν•˜λŠ” 경우, μš”μ²­ 체인의 λ§ˆμ§€λ§‰ ν”„λ‘μ‹œκ°€ μš”μ²­μ„ μ§€μ •λœ μ›μ„œλ²„λ‘œ 전달 ν•  λ•Œ "*"의 request-target을 λ°˜λ“œμ‹œ 보내야 ν•œλ‹€.(MUST)

예λ₯Όλ“€μ–΄, μš”μ²­μ—μ„œ

OPTIONS http://www.example.org:8001 HTTP/1.1

은 λ‹€μŒκ³Όκ°™μ΄ host β€œwww.example.org"의 8001 ν¬νŠΈμ— μ—°κ²°λœ ν›„ λ§ˆμ§€λ§‰ ν”„λ‘μ‹œμ— μ˜ν•΄μ„œ 전솑됐을 것이닀.

OPTIONS * HTTP/1.1 Host: www.example.org:8001

5.4 Host

μš”μ²­μ˜ β€œHost” 헀더 ν•„λ“œλŠ” λŒ€μƒ URI둜 λΆ€ν„° 호슀트 및 포트 정보λ₯Ό μ œκ³΅ν•˜λ―€λ‘œ μ›μ„œλ²„κ°€ 단일 IPμ£Όμ†Œμ—μ„œ 닀쀑 호슀트 이름에 λŒ€ν•œ μš”μ²­μ„ μ²˜λ¦¬ν•˜λŠ” λ™μ•ˆ λ¦¬μ†ŒμŠ€λ₯Ό ꡬ뢄할 수 μžˆλ‹€.

Host = uri-host [ ":" port ] ; Section 2.7.1

  • ν΄λΌμ΄μ–ΈνŠΈλŠ” λͺ¨λ“  HTTP/1.1 μš”μ²­ λ©”μ‹œμ§€μ—μ„œ Host 헀더 ν•„λ“œλ₯Ό λ°˜λ“œμ‹œ 보내야 ν•œλ‹€.(MUST)

  • λŒ€μƒ URI에 κΆŒν•œ ꡬ성 μš”μ†Œκ°€ ν¬ν•¨λœ 경우, μ–΄λ–€ userinfoλ‚˜ β€œ@β€œ 기호λ₯Ό μ œμ™Έν•˜κ³ , ν΄λΌμ΄μ–ΈνŠΈλŠ” ν•΄λ‹Ή κΆŒν•œ ꡬ성 μš”μ†Œμ™€ ν˜ΈμŠ€νŠΈμ— λŒ€ν•œ field-valueλ₯Ό λ°˜λ“œμ‹œ 보내야 ν•œλ‹€. (MUST)

  • λŒ€μƒ URI 에 λŒ€ν•œ κΆŒν•œ ꡬ성 μš”μ†Œκ°€ μ—†κ±°λ‚˜ μ •μ˜λ˜μ§€ μ•Šμ€ 경우 ν΄λΌμ΄μ–ΈνŠΈλŠ” 빈 field-valueκ°€ ν¬ν•¨λœ Host 헀더 ν•„λ“œλ₯Ό λ°˜λ“œμ‹œ 보내야 ν•œλ‹€.(MUST)

  • Host의 field-valueλŠ” μš”μ²­μ„ μ²˜λ¦¬ν•˜λŠ” 데 μ€‘μš”ν•œ μ •λ³΄μ΄λ―€λ‘œ μ‚¬μš©μž μ—μ΄μ „νŠΈλŠ” request-line λ‹€μŒμ— 첫 번째 헀더 ν•„λ“œλ‘œ Hostλ₯Ό 생성해야 ν•œλ‹€.(SHOULD)

예λ₯Ό λ“€μ–΄, μ›μ„œλ²„μ— λŒ€ν•œ <http://www.example.org/pub/WWW/>의 GET μš”μ²­μ€ λ‹€μŒκ³Ό 같이 μ‹œμž‘λœλ‹€.

GET /pub/WWW/ HTTP/1.1 Host: www.example.org

  • request-target이 absoluted-form인 κ²½μš°λΌλ„ ν΄λΌμ΄μ–ΈνŠΈλŠ” HTTP/1.1 μš”μ²­μ—μ„œ Host ν—€ 더 ν•„λ“œλ₯Ό λ°˜λ“œμ‹œ 전솑해야 ν•œλ‹€.(MUST)

  • ν”„λ‘μ‹œκ°€ request-target의 absolute-form을 가진 μš”μ²­μ„ μˆ˜μ‹ ν•˜λŠ” 경우, ν”„λ‘μ‹œλŠ” μˆ˜μ‹ λœ Host 헀더 ν•„λ“œ(μžˆλŠ” 경우)λ₯Ό λ¬΄μ‹œν•˜κ³  request-target의 호슀트 μ •λ³΄λ‘œ λŒ€μ²΄ν•΄μ•Ό ν•œλ‹€. (MUST)

  • μ„œλ²„λŠ” Host 헀더 ν•„λ“œκ°€ μ—†λŠ” HTTP/1.1 μš”μ²­ λ©”μ‹œμ§€μ™€ Host 헀더 ν•„λ“œμ˜ μœ νš¨ν•˜μ§€ μ•Šμ€ field-value λ˜λŠ” 두 개 μ΄μƒμ˜ Host 헀더 ν•„λ“œλ₯Ό ν¬ν•¨ν•˜λŠ” μš”μ²­ λ©”μ‹œμ§€μ— 400 (Bad Request) μƒνƒœ μ½”λ“œλ‘œ λ°˜λ“œμ‹œ 응닡해야 ν•œλ‹€.(MUST)

5.5 Effective Request URI

request-target이 μ’…μ’… μ‚¬μš©μž μ—μ΄μ „νŠΈμ˜ λŒ€μƒ URI의 μΌλΆ€λ§Œ ν¬ν•¨ν•œ 이래둜, μ„œλ²„λŠ” μš”μ²­μ„ μ μ ˆν•˜κ²Œ μ²˜λ¦¬ν•˜κΈ° μœ„ν•΄ μ›ν•˜λŠ” λŒ€μƒμ„ β€œeffcetive request URIβ€λ‘œ μž¬κ΅¬μ„±ν•œλ‹€. μž¬κ΅¬μ„±μ—λŠ” μ„œλ²„μ˜ 둜컬 ꡬ성과 request-target에 μžˆλŠ” 톡신 정보, Host 헀더 ν•„λ“œ 및 컀λ„₯μ…˜ μ»¨ν…μŠ€νŠΈμ— μ„œ μ „λ‹¬λ˜λŠ” 정보λ₯Ό λͺ¨λ‘ ν¬ν•¨ν•œλ‹€.

5.6 Associating a Response to Request

  • 컀λ„₯μ…˜μ— λŒ€ν•΄ λ‘κ°œ μ΄μƒμ˜ κ²°μ •λ˜μ§€ λͺ»ν•œ μš”μ²­μ΄ μžˆλŠ” ν΄λΌμ΄μ–ΈνŠΈλŠ” 보낸 μˆœμ„œλŒ€λ‘œ λ―Έκ²°μ • μš”μ²­ λͺ©λ‘μ„ λ°˜λ“œμ‹œ μœ μ§€ν•΄μ•Ό ν•˜λ©°(MUST)

  • ν•΄λ‹Ή 컀λ„₯μ…˜μ— λŒ€ν•΄ μˆ˜μ‹ λœ 각 응닡 λ©”μ‹œμ§€λ₯Ό 아직 μ΅œμ’… (non-1xx) 응닡을 받지 μ•Šμ€ κ°€μž₯ μš°μ„ μˆœμœ„κ°€ 높은 μš”μ²­κ³Ό λ°˜λ“œμ‹œ μ—°κ²°ν•΄μ•Ό ν•œλ‹€.(MUST)

5.7 Message Forwarding

  • 터널 역할을 ν•˜μ§€ μ•ŠλŠ” μ€‘κ°œμžλŠ” Section 6.1에 μ§€μ •λœ Connection 헀더 ν•„λ“œλ₯Ό λ°˜λ“œμ‹œ κ΅¬ν˜„ν•΄μ•Ό ν•˜λ©°, λ“€μ–΄μ˜€λŠ” 컀λ„₯μ…˜μ„ μœ„ν•΄ μ „λ‹¬λ˜λŠ” ν•„λ“œλŠ” λ°˜λ“œμ‹œ μ œμ™Έν•΄μ•Ό ν•œλ‹€.(MUST)

  • λ©”μ‹œμ§€κ°€ λ¬΄ν•œ μš”μ²­ λ£¨ν”„λ‘œλΆ€ν„° λ³΄ν˜Έλ˜μ§€ μ•ŠλŠ” ν•œ, μ€‘κ°œμžλŠ” λ©”μ‹œμ§€λ₯Ό 자기 μžμ‹ μ—κ²Œ μ „λ‹¬ν•΄μ„œλŠ” μ•ˆ λœλ‹€.(MUST NOT)

5.7.1 Via

β€œVia” 헀더 ν•„λ“œλŠ” μ΄λ©”μΌμ˜ β€œReceived" 헀더 ν•„λ“œμ™€ μœ μ‚¬ν•˜κ²Œ μ‚¬μš©μž μ—μ΄μ „νŠΈμ™€ μ„œλ²„(μš”μ²­ μ‹œ)λ˜λŠ” μ›μ„œλ²„μ™€ ν΄λΌμ΄μ–ΈνŠΈ(응닡 μ‹œ)사이에 μ€‘κ°œμž ν”„λ‘œν† μ½œκ³Ό μˆ˜μ‹ μžκ°€ μžˆμŒμ„ λ‚˜νƒ€λ‚Έλ‹€.([RFC5322]의 Section 3.6.7).

  • ν”„λ‘μ‹œλŠ” μ „λ‹¬λ˜λŠ” 각 λ©”μ‹œμ§€μ—μ„œ μ•„λž˜ μ„€λͺ…λœ λŒ€λ‘œ μ μ ˆν•œ Via 헀더 ν•„λ“œλ₯Ό 보내야 ν•œλ‹€. (MUST)

  • HTTP-to-HTTP 게이트 μ›¨μ΄λŠ” 각 μΈλ°”μš΄λ“œ μš”μ²­ λ©”μ‹œμ§€μ—μ„œ μ μ ˆν•œ Via 헀더 ν•„λ“œλ₯Ό 보내야 ν•˜λ©°(MUST)

  • μ „λ‹¬λœ 응닡 λ©”μ‹œμ§€λ‘œ Via 헀더 ν•„λ“œλ₯Ό 보낼 수 μžˆλ‹€.(MAY)

  • λ°œμ‹ μžλŠ” received-protocol 값이 λ‹€λ₯Έ ν•­λͺ©μ„ κ²°ν•©ν•΄ μ„œλŠ” μ•ˆ λœλ‹€.(MUST) (e.g,. 1.0κ³Ό 1.1을 κ²°ν•©ν•˜λ©΄ μ•ˆ λœλ‹€)

5.7.2 Transformations

일뢀 μ€‘κ°œμžλŠ” λ©”μ‹œμ§€μ™€ 페이 λ‘œλ“œλ₯Ό λ³€ν™˜ν•˜κΈ° μœ„ν•œ κΈ°λŠ₯을 ν¬ν•¨ν•œλ‹€. 예λ₯Ό λ“€μ–΄ ν”„λ‘μ‹œλŠ” μΊμ‹œ 곡간을 μ ˆμ•½ν•˜κ±°λ‚˜ 느린 링크의 νŠΈλž˜ν”½ 양을 쀄이기 μœ„ν•΄ 이미지 ν˜•μ‹ 간에 λ³€ν™˜ν•  수 μžˆλ‹€.

의미둠적으둜 의미 μžˆλŠ” λ°©μ‹μœΌλ‘œ λ©”μ‹œμ§€λ₯Ό μˆ˜μ •ν•˜λ„λ‘ μ„€κ³„λ˜κ±°λ‚˜ κ΅¬μ„±λœ HTTP-to-HTTP ν”„λ½μ‹œλ₯Ό β€œtransforming proxy"라고 ν•œλ‹€.

  • request- target에 fully-qualified 도메인 이름이 ν¬ν•¨λœ 경우 ν”„λ½μ‹œλŠ” 호슀트 이름을 λ³€κ²½ν•΄μ„œλŠ” μ•ˆ λœλ‹€.(MUST NOT)

  • ν”„λ‘μ‹œλŠ” μˆ˜μ‹ λœ request-target을 λ‹€μŒ μΈλ°”μš΄λ“œ μ„œλ²„λ‘œ 전달할 λ•Œ 빈 경둜λ₯Ό β€œ/"λ˜λŠ” β€œ*" 둜 λ°”κΎΈκΈ° μœ„ν•΄ μœ„μ—μ„œ μ„€λͺ…ν•œ 경우λ₯Ό μ œμ™Έν•˜κ³  μˆ˜μ‹ λœ request-target의 β€œabsolute-path” 및 β€œquery" 뢀뢄을 μˆ˜μ •ν•΄μ„œλŠ” μ•ˆλœλ‹€.(MUST NOT)

  • ν”„λ½μ‹œλŠ” no-trasnform cache-control μ§€μ‹œμ–΄λ₯Ό ν¬ν•¨ν•œ λ©”μ‹œμ§€μ˜ 페이 λ‘œλ“œ([RFC7231]의 Section 3.3)λ₯Ό λ³€ν™˜ν•΄μ„œλŠ” μ•ˆλœλ‹€.(MUST NOT) ([RFC7234]의 Section 5.2).

  • 페이 λ‘œλ“œλ₯Ό λ³€ν™˜ν•˜λŠ” ν”„λ½μ‹œλŠ” 214 warn-code (β€œTransformation Applied”)κ°€ 아직 λ©”μ‹œμ§€μ— μ—†λŠ” 경우 Warning 헀더 ν•„λ“œμ— μΆ”κ°€ν•΄μ•Ό ν•œλ‹€.(MUST)

  • ν”„λ½μ‹œλŠ” ν•„λ“œμ˜ μ •μ˜κ°€ μ΄λŸ¬ν•œ μˆ˜μ •μ„ νŠΉλ³„νžˆ ν—ˆμš©ν•˜κ±°λ‚˜ μˆ˜μ •μ΄ 개인 정보 λ˜λŠ” λ³΄μ•ˆμ„ μœ„ν•΄ ν•„μš”ν•œ κ²ƒμœΌλ‘œ κ°„μ£Όλ˜μ§€ μ•ŠλŠ” ν•œ 톡신 체인의 μ—”λ“œ 포인트, λ¦¬μ†ŒμŠ€ μƒνƒœ λ˜λŠ” μ„ νƒλœ ν‘œν˜„(페이 λ‘œλ“œ μ œμ™Έ)에 λŒ€ν•œ 정보λ₯Ό μ œκ³΅ν•˜λŠ” 헀더 ν•„λ“œλ₯Ό μˆ˜μ •ν•˜λ©΄ μ•ˆ λœλ‹€.(SHOULD NOT)

Last updated