<aside>

</aside>

μ•ˆλ…•ν•˜μ„Έμš”! 😊 FastAPI κ°•μ˜ 4번째 μ‹œκ°„μž…λ‹ˆλ‹€! λ‹€λ“€ 잘 λ”°λΌμ˜€κ³  κ³„μ‹ κ°€μš”?

μ§€λ‚œ 3κ°•μ—μ„œλŠ” λ‹€μ–‘ν•œ URL κ²½λ‘œμ™€ HTTP λ©”μ„œλ“œλ₯Ό μ²˜λ¦¬ν•˜λŠ” λΌμš°νŒ…μ˜ 기초λ₯Ό λ°°μ› μŠ΅λ‹ˆλ‹€. μ—¬λŸ¬ 개의 λ¬Έ(μ—”λ“œν¬μΈνŠΈ)을 λ§Œλ“€κ³  각 λ¬Έλ§ˆλ‹€ λ‹€λ₯Έ μ—­ν• (GET, POST λ“±)을 λΆ€μ—¬ν•˜λŠ” 방법을 μ΅ν˜”μ£ .

ν•˜μ§€λ§Œ μ§€κΈˆκΉŒμ§€ λ§Œλ“  APIλŠ” 쑰금 μ •μ μ΄μ—ˆμ–΄μš”. 예λ₯Ό λ“€μ–΄ 항상 λͺ¨λ“  μ•„μ΄ν…œ λͺ©λ‘λ§Œ λ°˜ν™˜ν–ˆμ£ . μ‹€μ œ μ„œλΉ„μŠ€μ—μ„œλŠ” 'νŠΉμ • ID의 μ•„μ΄ν…œ μ •λ³΄λ§Œ 쀘!' λΌκ±°λ‚˜ 'μ΅œμ‹  10개만 λ³΄μ—¬μ€˜!' 와 같이 동적인 μš”μ²­μ„ μ²˜λ¦¬ν•΄μ•Ό ν•  λ•Œκ°€ 훨씬 λ§ŽμŠ΅λ‹ˆλ‹€.

이번 μ‹œκ°„μ—λŠ” λ°”λ‘œ 이 동적인 APIλ₯Ό λ§Œλ“œλŠ” 방법을 λ°°μ›λ‹ˆλ‹€! URL 경둜 μžμ²΄μ— λ³€μˆ˜λ₯Ό λ„£λŠ” **경둜 λ§€κ°œλ³€μˆ˜(Path Parameter)**와, URL 뒀에 ?λ₯Ό λΆ™μ—¬ μΆ”κ°€ 정보λ₯Ό μ „λ‹¬ν•˜λŠ” **쿼리 λ§€κ°œλ³€μˆ˜(Query Parameter)**λ₯Ό μ‚¬μš©ν•˜λŠ” 방법을 μ•Œμ•„λ³Ό κ±°μ˜ˆμš”.

APIλ₯Ό λ”μš± λ˜‘λ˜‘ν•˜κ³  μœ μ—°ν•˜κ²Œ λ§Œλ“€μ–΄ λ΄…μ‹œλ‹€! πŸ€“


πŸ“š 챕터 μ†Œκ°œ

이번 4κ°•μ—μ„œλŠ” APIκ°€ ν΄λΌμ΄μ–ΈνŠΈλ‘œλΆ€ν„° μž…λ ₯을 λ°›μ•„ λ™μ μœΌλ‘œ 응닡을 μƒμ„±ν•˜λ„λ‘ λ§Œλ“œλŠ” 핡심 방법 두 κ°€μ§€, 경둜 λ§€κ°œλ³€μˆ˜μ™€ 쿼리 λ§€κ°œλ³€μˆ˜λ₯Ό λ°°μ›λ‹ˆλ‹€.

λ˜ν•œ, νƒ€μž… 힌트λ₯Ό μ‚¬μš©ν•˜μ—¬ FastAPIκ°€ μžλ™μœΌλ‘œ 데이터λ₯Ό κ²€μ¦ν•˜κ³  λ³€ν™˜ν•˜λ„λ‘ ν•˜λŠ” κ°•λ ₯ν•œ κΈ°λŠ₯을 ν™œμš©ν•΄λ³΄κ³ , λ§€κ°œλ³€μˆ˜μ— 기본값을 μ„€μ •ν•˜μ—¬ **선택적(Optional)**으둜 λ§Œλ“œλŠ” 방법도 μ•Œμ•„λ΄…λ‹ˆλ‹€. 이 κ°•μ˜λ₯Ό 톡해 μ—¬λŸ¬λΆ„μ˜ APIκ°€ 훨씬 더 μœ μš©ν•˜κ³  μ‹€μš©μ μœΌλ‘œ λ°œμ „ν•  κ²ƒμž…λ‹ˆλ‹€!


🎯 챕터 λͺ©ν‘œ

이 κ°•μ˜λ₯Ό 마치면 μ—¬λŸ¬λΆ„μ€ λ‹€μŒμ„ ν•  수 있게 λ©λ‹ˆλ‹€:

  1. 경둜 λ§€κ°œλ³€μˆ˜λ₯Ό μ •μ˜ν•˜κ³  ν•¨μˆ˜ 인자둜 λ°›μ•„ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  2. 쿼리 λ§€κ°œλ³€μˆ˜λ₯Ό μ •μ˜ν•˜κ³  ν•¨μˆ˜ 인자둜 λ°›μ•„ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  3. νƒ€μž… 힌트λ₯Ό μ‚¬μš©ν•˜μ—¬ 경둜 및 쿼리 λ§€κ°œλ³€μˆ˜μ˜ νƒ€μž…μ„ μ„ μ–Έν•˜κ³ , FastAPI의 μžλ™ 데이터 검증 및 λ³€ν™˜ κΈ°λŠ₯을 ν™œμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  4. λ§€κ°œλ³€μˆ˜μ— 기본값을 μ„€μ •ν•˜μ—¬ 선택적(Optional) λ§€κ°œλ³€μˆ˜λ₯Ό λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€.
  5. ν•˜λ‚˜μ˜ 경둜 μž‘λ™ ν•¨μˆ˜μ—μ„œ 경둜 λ§€κ°œλ³€μˆ˜μ™€ 쿼리 λ§€κ°œλ³€μˆ˜λ₯Ό ν•¨κ»˜ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.