<aside>

</aside>

πŸ‘‹ 챕터 μ†Œκ°œ

μ•ˆλ…•ν•˜μ„Έμš”! μ§€λ‚œ μ‹œκ°„μ—λŠ” FastAPI에 loguruλ₯Ό μ„±κ³΅μ μœΌλ‘œ μ—°λ™ν–ˆμ£ . ν•˜μ§€λ§Œ μžμ„Ένžˆ 보면, λͺ¨λ“  μ—”λ“œν¬μΈνŠΈ ν•¨μˆ˜(read_root, read_item) μ•ˆμ— μš°λ¦¬κ°€ 직접 logger.info() μ½”λ“œλ₯Ό μž‘μ„±ν•΄μ•Ό ν–ˆμŠ΅λ‹ˆλ‹€. μ—”λ“œν¬μΈνŠΈκ°€ 수백 개라면 μ–΄λ–¨κΉŒμš”? λͺ¨λ“  곳에 λ‘œκΉ… μ½”λ“œλ₯Ό 볡사-λΆ™μ—¬λ„£κΈ° ν•˜λŠ” 것은 λΉ„νš¨μœ¨μ μ΄κ³  μ‹€μˆ˜λ₯Ό μœ λ°œν•˜κΈ° μ‰½μŠ΅λ‹ˆλ‹€. 😫

이번 μ±•ν„°μ—μ„œλŠ” FastAPI의 κ°•λ ₯ν•œ κΈ°λŠ₯인 **'미듀웨어(Middleware)'**λ₯Ό μ‚¬μš©ν•˜μ—¬ 이 문제λ₯Ό μ•„μ£Ό μš°μ•„ν•˜κ²Œ ν•΄κ²°ν•΄ λ³΄κ² μŠ΅λ‹ˆλ‹€. λ―Έλ“€μ›¨μ–΄λŠ” λͺ¨λ“  μš”μ²­μ΄ 우리의 API에 λ„λ‹¬ν•˜κΈ° μ „, 그리고 응닡이 ν΄λΌμ΄μ–ΈνŠΈμ—κ²Œ λŒμ•„κ°€κΈ° 직전에 κ±°μΉ˜λŠ” '쀑앙 κ΄€λ¬Έ'κ³Ό κ°™μ•„μš”. 이 관문에 둜그 기둝 μž₯치λ₯Ό μ„€μΉ˜ν•˜μ—¬ λͺ¨λ“  μš”μ²­κ³Ό 응닡을 μžλ™μœΌλ‘œ κΈ°λ‘ν•˜κ³ , 좔적을 μœ„ν•œ **'μš”μ²­ ID(Request ID)'**κΉŒμ§€ λΆ€μ—¬ν•΄ λ³΄κ² μŠ΅λ‹ˆλ‹€!


🎯 챕터 λͺ©ν‘œ

이번 챕터λ₯Ό 마치면 μ—¬λŸ¬λΆ„μ€ λ‹€μŒμ„ ν•  수 있게 될 κ±°μ˜ˆμš”!


πŸ’» 이번 μ±•ν„°μ—μ„œ μ‚¬μš©λ˜λŠ” 전체 μ½”λ“œ 및 ν”„λ‘œμ νŠΈ ꡬ쑰

μ§€λ‚œ μ‹œκ°„μ˜ main.py νŒŒμΌμ„ μˆ˜μ •ν•˜μ—¬ 미듀웨어 λ‘œμ§μ„ μΆ”κ°€ν•˜κ³ , μ—”λ“œν¬μΈνŠΈμ— 있던 μˆ˜λ™ λ‘œκΉ… μ½”λ“œλ₯Ό μ œκ±°ν•˜μ—¬ μ½”λ“œλ₯Ό λ”μš± κΉ”λ”ν•˜κ²Œ λ§Œλ“­λ‹ˆλ‹€.


πŸ“– κ°•μ˜ λ‚΄μš©

πŸšͺ FastAPI λ―Έλ“€μ›¨μ–΄λž€?

λ―Έλ“€μ›¨μ–΄λŠ” μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ '쀑앙 ν˜„κ΄€'κ³Ό κ°™μ•„μš”. λͺ¨λ“  μ†λ‹˜(HTTP Request)은 이 ν˜„κ΄€μ„ 톡해 λ“€μ–΄μ˜€κ³ , ν˜„κ΄€μ„ 톡해 λ‚˜κ°‘λ‹ˆλ‹€(HTTP Response).