Amenable
Amenable's Blog
Amenable
  • λΆ„λ₯˜ 전체보기 (189)
    • πŸ“‚ JAVA (87)
      • μ΄νŽ™ν‹°λΈŒ μžλ°” (65)
      • μ£Όμš” κ°œλ… (22)
    • πŸ“‚ 개발 μ„œμ  (22)
      • μ‹€μš©μ£Όμ˜ ν”„λ‘œκ·Έλž˜λ¨Έ (1)
      • 객체지ν–₯의 사싀과 μ˜€ν•΄ (2)
      • 클린 μ½”λ“œ (8)
      • ν•¨κ»˜ 자라기 (1)
      • 그림으둜 λ°°μš°λŠ” HTTP&Network Basic (10)
    • πŸ“‚ λ°μ΄ν„°λ² μ΄μŠ€ (8)
      • κ°œλ… (8)
      • λ¬Έμ œν’€μ΄ (0)
    • πŸ“‚ λ„€νŠΈμ›Œν¬ (14)
      • κ°œλ… (6)
      • 성곡과 μ‹€νŒ¨λ₯Ό κ²°μ •ν•˜λŠ” 1%의 λ„€νŠΈμ›Œν¬ 원리 (8)
    • πŸ“‚ μŠ€ν”„λ§ (13)
      • κΈ°λ³Έ κ°œλ… (13)
    • πŸ“‚ WEB (5)
    • πŸ“‚ 자료ꡬ쑰 (12)
      • κ°œλ… (2)
      • μ •λ ¬ (8)
      • 트리 (2)
    • πŸ“‚ μ•Œκ³ λ¦¬μ¦˜ (10)
      • μ΅œμ†Œμ‹ μž₯트리 (2)
      • μ΅œλ‹¨ 경둜 (2)
      • λ¬Έμžμ—΄ (2)
      • ETC (4)
    • πŸ“‚ μ•Œκ³ λ¦¬μ¦˜_λ¬Έμ œν’€μ΄ (4)
      • BOJ_λ°±μ€€ (4)
    • πŸ“‚ ν”„λ‘œκ·Έλž˜λ° (3)
    • πŸ“‚ DevOps (2)
      • 배포 (2)
    • πŸ“‚ ν›„κΈ° (8)
      • μš°μ•„ν•œ ν…Œν¬μ½”μŠ€(ν”„λ¦¬μ½”μŠ€) (4)
      • 2023λ…„ (3)
      • 2024λ…„ (1)
    • πŸ“‚ 회고 (1)
      • 2023λ…„ (1)

λΈ”λ‘œκ·Έ 메뉴

  • πŸš€ GitHub

ν‹°μŠ€ν† λ¦¬

hELLO Β· Designed By μ •μƒμš°.
Amenable
πŸ“‚ 개발 μ„œμ /그림으둜 λ°°μš°λŠ” HTTP&Network Basic

제 3μž₯. HTTP μ •λ³΄λŠ” HTTP λ©”μ‹œμ§€μ— μžˆλ‹€.

제 3μž₯. HTTP μ •λ³΄λŠ” HTTP λ©”μ‹œμ§€μ— μžˆλ‹€.
πŸ“‚ 개발 μ„œμ /그림으둜 λ°°μš°λŠ” HTTP&Network Basic

제 3μž₯. HTTP μ •λ³΄λŠ” HTTP λ©”μ‹œμ§€μ— μžˆλ‹€.

2023. 5. 30. 20:14

πŸ“˜ 1. 전솑 νš¨μœ¨μ„ λ†’μ΄λŠ” 인코딩

  • HTTP둜 λ°μ΄ν„°λ₯Ό μ „솑할 κ²½μš° κ·ΈλŒ€λ‘œ μ „솑할 μˆ˜ μžˆμ§€λ§Œ μ „솑할 λ•Œμ— μΈμ½”λ”©(λ³€ν™˜)을 μ‹€μ‹œν•¨μœΌλ‘œμ¨ μ „솑 νš¨μœ¨μ„ λ†’일 μˆ˜ μžˆλ‹€.
  • ν•˜μ§€λ§Œ, μ»΄ν“¨ν„°μ—μ„œ μΈμ½”λ”© μ²˜λ¦¬λ₯Ό ν•΄μ•Ό ν•˜κΈ° λ•Œλ¬Έμ— CPU λ“±μ˜ λ¦¬μ†ŒμŠ€λŠ” λ³΄λ‹€ λ§Žμ΄ μ†ŒλΉ„ν•˜κ²Œ λœλ‹€.

 

  • μ½˜ν…μΈ  μ½”λ”©(Content Codings)
    엔티티에 μ μš©ν•˜λŠ” μΈμ½”딩을 κ°€λ¦¬ν‚€λŠ”λ° μ—”ν‹°ν‹° μ •보λ₯Ό μœ μ§€ν•œ μ±„λ‘œ μ••μΆ•ν•œλ‹€.
    μ’…λ₯˜ : gzip(GNU zip), compress(UNIX의 ν‘œμ€€ μ••μΆ•), deflate(zlib), identity(인코딩 μ—†μŒ)
  • 싱크 μ „솑 μ½”λ”©(Chunked transfer Coding)
    μ—”ν‹°ν‹° λ°”λ””λ₯Ό λΆ„ν• ν•˜λŠ” κΈ°λŠ₯
    μ‚¬μ΄μ¦ˆκ°€ ν° λ°μ΄ν„°λ₯Ό μ „μ†‘ν•˜λŠ” κ²½μš°μ— λ°μ΄ν„°λ₯Ό λΆ„ν• ν•΄μ„œ μ‘°κΈˆμ”© ν‘œμ‹œν•˜λ„둝 ν•˜λŠ” κ²ƒ

 

 

πŸ“˜ 2. μ—¬λŸ¬ λ°μ΄ν„°λ₯Ό λ³΄λ‚΄λŠ” λ©€ν‹°νŒŒνŠΈ (Multipart)

  • μ—¬λŸ¬ λ‹€λ₯Έ μ’…λ₯˜μ˜ λ°μ΄ν„°λ₯Ό μˆ˜μš©ν•˜λŠ” λ°©λ²•
  • ν•˜λ‚˜μ˜ λ©”μ‹œμ§€ λ°”λ”” λ‚΄λΆ€μ— μ—”ν‹°ν‹°λ₯Ό μ—¬λŸ¬ κ°œ ν¬ν•¨μ‹œμΌœ λ³΄λ‚Ό μˆ˜ μžˆλ‹€.
  • 주둜 μ΄λ―Έμ§€λ‚˜ ν…μŠ€νŠΈ νŒŒμΌ λ“±μ„ μ—…λ‘œλ“œν•  λ•Œ μ‚¬μš©

 

  • multipart/form-data
    WEB νΌμœΌλ‘œλΆ€ν„° νŒŒμΌ μ—…λ‘œλ“œμ— μ‚¬μš©
  • multipart/byteranges
    μƒνƒœ μ½”λ“œ 206(Partial Content) λ¦¬μŠ€ν°μŠ€ λ©”μ‹œμ§€κ°€ λ³΅μˆ˜ λ²”μœ„μ˜ λ‚΄μš©μ„ ν¬ν•¨ν•˜λŠ” λ•Œμ— μ‚¬μš©

 

 

πŸ“˜ 3. μΌλΆ€λΆ„λ§Œ λ°›λŠ” λ ˆμΈμ§€ λ¦¬ν€˜μŠ€νŠΈ (Range Request)

  • κ΄‘λŒ€μ—­μ˜ λ„€νŠΈμ›Œν¬λ₯Ό μ΄μš©ν•  μˆ˜ μžˆκΈ° μ „μ—λŠ” λŒ€μš©λŸ‰μ˜ μ΄λ―Έμ§€μ™€ λ°μ΄ν„°λ₯Ό λ‹€μš΄λ‘œλ“œν•˜κΈ°κ°€ μ–΄λ €μ› μŒ
  • λ‹€μš΄λ‘œλ“œ μ€‘에 μ»€λ„₯μ…˜μ΄ λŠμ–΄μ§€κ²Œ λ˜λ©΄ μ²˜μŒλΆ€ν„° λ‹€μ‹œ λ‹€μš΄λ‘œλ“œλ₯Ό ν•΄μ•Ό ν–ˆκΈ° λ•Œλ¬Έμž„

 

  • κ·Έλž˜μ„œ λ¦¬μ€Œ(Resume)μ΄λΌλŠ” κΈ°λŠ₯을 μ΄μš©ν•˜μ—¬ μ΄μ „에 λ‹€μš΄λ‘œλ“œλ₯Ό ν•œ κ³³μ—μ„œλΆ€ν„° λ‹€μ‹œ λ‹€μš΄λ‘œλ“œλ₯Ό μž¬κ°œν•˜λ €κ³  ν•¨
  • 이 κΈ°λŠ₯을 μ‹€ν˜„ν•˜κΈ° μœ„ν•΄μ„œλŠ” λ²”μœ„λ₯Ό μ§€μ •ν•΄μ„œ λ¦¬ν€˜μŠ€νŠΈν•˜λŠ” λ ˆμΈμ§€ λ¦¬ν€˜μŠ€νŠΈ(Range Request)κ°€ ν•„μš”ν•¨

 

  • Range ν—€λ” ν•„λ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ λ¦¬μ†ŒμŠ€μ˜ λ°”μ΄νŠΈ λ ˆμΈμ§€λ₯Ό μ§€μ •ν•˜μ—¬ μ‚¬μš©
// 5,001 ~ 10,000 λ°”μ΄νŠΈμ˜ λ²”μœ„λ§Œμ„ λ¦¬ν€˜μŠ€νŠΈν•˜λŠ” 경우
Range: bytes = 5001-10000

 

  • λ ˆμΈμ§€ λ¦¬ν€˜μŠ€νŠΈμ— λŒ€ν•œ λ¦¬μŠ€ν°μŠ€λŠ” μƒνƒœ μ½”λ“œ 206(Partial Content)이 λŒμ•„μ˜΄
  • 볡수 λ²”μœ„μ˜ λ ˆμΈμ§€ λ¦¬ν€˜μŠ€νŠΈμ— λŒ€ν•œ λ¦¬μŠ€ν°μŠ€λŠ” multipart/byterangesκ°€ λŒμ•„μ˜΄
  • μ„œλ²„κ°€ λ ˆμΈμ§€ λ¦¬ν€˜μŠ€νŠΈλ₯Ό μ§€μ›ν•˜μ§€ μ•ŠλŠ” κ²½μš° μƒνƒœμ½”λ“œ 200(OK)이 λŒμ•„μ˜΄

 

 

πŸ“˜ 4. μ΅œμ μ˜ μ½˜ν…μΈ λ₯Ό λŒλ €μ£ΌλŠ” μ½˜ν…μΈ  λ„€κ³ μ‹œμ—μ΄μ…˜ (Content Negotiation)

  • μ½˜ν…μΈ  λ„€κ³ μ‹œμ—μ΄μ…˜(Content Negotiation)μ΄λž€ ν΄λΌμ΄μ–ΈνŠΈμ™€ μ„œλ²„κ°€ μ œκ³΅ν•˜λŠ” λ¦¬μ†ŒμŠ€μ˜ λ‚΄μš©μ— λŒ€ν•΄μ„œ κ΅μ„­ν•˜λŠ” κ²ƒ
  • 같은 μ½˜ν…μΈ μ΄μ§€λ§Œ μ—¬λŸ¬ κ°œμ˜ νŽ˜μ΄μ§€λ₯Ό μ§€λ‹Œ μ›Ή νŽ˜μ΄μ§€λ₯Ό μ‚¬μš©ν•˜λŠ” κ²½μš°μ— μ‚¬μš©
  • 예λ₯Ό λ“€μ–΄, μ˜μ–΄μ™€ ν•œκ΅­μ–΄μ™€ κ°™μ΄ μ„œλ‘œ λ‹€λ₯Έ μ–Έμ–΄λ₯Ό μ£Όλ‘œ μ‚¬μš©ν•˜λŠ” λΈŒλΌμš°μ €κ°€ κ°™μ€ URI에 μ•‘μ„ΈμŠ€ ν•  λ•Œμ— κ°κ° μ˜μ–΄νŒ μ›Ή νŽ˜μ΄μ§€μ™€ ν•œκ΅­μ–΄νŒ μ›Ή νŽ˜μ΄μ¦ˆλ₯Ό ν‘œμ‹œν•˜λŠ” κ²ƒ
  • λ¦¬ν€˜μŠ€νŠΈ λ©”μ‹œμ§€μ— ν¬ν•¨λœ λ¦¬ν€˜μŠ€νŠΈ ν—€λ” ν•„λ“œκ°€ νŒλ‹¨ κΈ°μ€€μ΄ λœλ‹€
    Accept
    Accept-Charset
    Accept-Encoding
    Accept-Language
    Content-Language

 

  • μ„œλ²„ κ΅¬λ™ν˜• λ„€κ³ μ‹œμ—μ΄μ…˜(Serve-driven Negotiation)
    μ„œλ²„ μΈ‘μ—μ„œ μ½˜ν…μΈ  λ„€κ³ μ‹œμ—μ΄μ…˜μ„ ν•˜λŠ” λ°©μ‹
    μ„œλ²„ μΈ‘μ—μ„œ λ¦¬ν€˜μŠ€νŠΈ ν—€λ” ν•„λ“œμ˜ μ •보λ₯Ό μ°Έκ³ ν•΄μ„œ μžλ™μ μœΌλ‘œ μ²˜λ¦¬
  • μ—μ΄μ „νŠΈ κ΅¬λ™ν˜• λ„€κ³ μ‹œμ—μ΄μ…˜(Agent-driven Negotiation)
    ν΄λΌμ΄μ–ΈνŠΈ μΈ‘μ—μ„œ μ½˜ν…μΈ  λ„€κ³ μ‹œμ—μ΄μ…˜μ„ ν•˜λŠ” λ°©λ²•
    λΈŒλΌμš°μ €μ— ν‘œμ‹œλœ μ„ νƒμ§€ μ€‘μ—μ„œ μœ μ €κ°€ μˆ˜λ™μœΌλ‘œ μ„ νƒ
  • νŠΈλžœμŠ€νŽ˜μ–΄λŸ°νŠΈ λ„€κ³ μ‹œμ—μ΄μ…˜(Transparent Negotiation)
    μ„œλ²„ κ΅¬λ™ν˜„κ³Ό μ—μ΄μ „νŠΈ κ΅¬λ™ν˜•을 ν˜Όν•©ν•œ κ²ƒ
    μ„œλ²„μ™€ ν΄λΌμ΄μ–ΈνŠΈκ°€ κ°κ° μ½˜ν…μΈ  λ„€κ³ μ‹œμ—μ΄μ…˜μ„ ν•˜λŠ” λ°©μ‹

'πŸ“‚ 개발 μ„œμ  > 그림으둜 λ°°μš°λŠ” HTTP&Network Basic' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

제 6μž₯. HTTP 헀더  (0) 2023.05.31
제 5μž₯. HTTP와 μ—°κ³„ν•˜λŠ” μ›Ή μ„œλ²„  (0) 2023.05.31
제 4μž₯. κ²°κ³Όλ₯Ό μ „λ‹¬ν•˜λŠ” HTTP μƒνƒœ μ½”λ“œ  (0) 2023.05.30
제 2μž₯. κ°„λ‹¨ν•œ ν”„λ‘œν† μ½œ HTTP  (0) 2023.05.30
제 1μž₯. μ›Ήκ³Ό λ„€νŠΈμ›Œν¬μ˜ 기본에 λŒ€ν•΄ μ•Œμ•„λ³΄μž  (0) 2023.05.30
  • πŸ“˜ 1. 전솑 νš¨μœ¨μ„ λ†’μ΄λŠ” 인코딩
  • πŸ“˜ 2. μ—¬λŸ¬ λ°μ΄ν„°λ₯Ό λ³΄λ‚΄λŠ” λ©€ν‹°νŒŒνŠΈ (Multipart)
  • πŸ“˜ 3. μΌλΆ€λΆ„λ§Œ λ°›λŠ” λ ˆμΈμ§€ λ¦¬ν€˜μŠ€νŠΈ (Range Request)
  • πŸ“˜ 4. μ΅œμ μ˜ μ½˜ν…μΈ λ₯Ό λŒλ €μ£ΌλŠ” μ½˜ν…μΈ  λ„€κ³ μ‹œμ—μ΄μ…˜ (Content Negotiation)
'πŸ“‚ 개발 μ„œμ /그림으둜 λ°°μš°λŠ” HTTP&Network Basic' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
  • 제 5μž₯. HTTP와 μ—°κ³„ν•˜λŠ” μ›Ή μ„œλ²„
  • 제 4μž₯. κ²°κ³Όλ₯Ό μ „λ‹¬ν•˜λŠ” HTTP μƒνƒœ μ½”λ“œ
  • 제 2μž₯. κ°„λ‹¨ν•œ ν”„λ‘œν† μ½œ HTTP
  • 제 1μž₯. μ›Ήκ³Ό λ„€νŠΈμ›Œν¬μ˜ 기본에 λŒ€ν•΄ μ•Œμ•„λ³΄μž
Amenable
Amenable
CS, μžλ°”, 자료ꡬ쑰, μ•Œκ³ λ¦¬μ¦˜, μŠ€ν”„λ§, μŠ€ν”„λ§ λΆ€νŠΈμ— ν•΄λ‹Ήν•˜λŠ” κ°œλ°œμ— κ΄€ν•œ λ‚΄μš©μ„ κ³΅μœ ν•©λ‹ˆλ‹€.

ν‹°μŠ€ν† λ¦¬νˆ΄λ°”

단좕킀

λ‚΄ λΈ”λ‘œκ·Έ

λ‚΄ λΈ”λ‘œκ·Έ - κ΄€λ¦¬μž ν™ˆ μ „ν™˜
Q
Q
μƒˆ κΈ€ μ“°κΈ°
W
W

λΈ”λ‘œκ·Έ κ²Œμ‹œκΈ€

κΈ€ μˆ˜μ • (κΆŒν•œ μžˆλŠ” 경우)
E
E
λŒ“κΈ€ μ˜μ—­μœΌλ‘œ 이동
C
C

λͺ¨λ“  μ˜μ—­

이 νŽ˜μ΄μ§€μ˜ URL 볡사
S
S
맨 μœ„λ‘œ 이동
T
T
ν‹°μŠ€ν† λ¦¬ ν™ˆ 이동
H
H
단좕킀 μ•ˆλ‚΄
Shift + /
⇧ + /

* λ‹¨μΆ•ν‚€λŠ” ν•œκΈ€/영문 λŒ€μ†Œλ¬Έμžλ‘œ 이용 κ°€λŠ₯ν•˜λ©°, ν‹°μŠ€ν† λ¦¬ κΈ°λ³Έ λ„λ©”μΈμ—μ„œλ§Œ λ™μž‘ν•©λ‹ˆλ‹€.