<aside>
</aside>
μλ νμΈμ! π FastAPI κ°μ 4λ²μ§Έ μκ°μ λλ€! λ€λ€ μ λ°λΌμ€κ³ κ³μ κ°μ?
μ§λ 3κ°μμλ λ€μν URL κ²½λ‘μ HTTP λ©μλλ₯Ό μ²λ¦¬νλ λΌμ°ν μ κΈ°μ΄λ₯Ό λ°°μ μ΅λλ€. μ¬λ¬ κ°μ λ¬Έ(μλν¬μΈνΈ)μ λ§λ€κ³ κ° λ¬Έλ§λ€ λ€λ₯Έ μν (GET, POST λ±)μ λΆμ¬νλ λ°©λ²μ μ΅νμ£ .
νμ§λ§ μ§κΈκΉμ§ λ§λ APIλ μ‘°κΈ μ μ μ΄μμ΄μ. μλ₯Ό λ€μ΄ νμ λͺ¨λ μμ΄ν λͺ©λ‘λ§ λ°ννμ£ . μ€μ μλΉμ€μμλ 'νΉμ IDμ μμ΄ν μ λ³΄λ§ μ€!' λΌκ±°λ 'μ΅μ 10κ°λ§ 보μ¬μ€!' μ κ°μ΄ λμ μΈ μμ²μ μ²λ¦¬ν΄μΌ ν λκ° ν¨μ¬ λ§μ΅λλ€.
μ΄λ² μκ°μλ λ°λ‘ μ΄ λμ μΈ APIλ₯Ό λ§λλ λ°©λ²μ λ°°μλλ€! URL κ²½λ‘ μ체μ λ³μλ₯Ό λ£λ **κ²½λ‘ λ§€κ°λ³μ(Path Parameter)**μ, URL λ€μ ?
λ₯Ό λΆμ¬ μΆκ° μ 보λ₯Ό μ λ¬νλ **쿼리 λ§€κ°λ³μ(Query Parameter)**λ₯Ό μ¬μ©νλ λ°©λ²μ μμλ³Ό κ±°μμ.
APIλ₯Ό λμ± λλνκ³ μ μ°νκ² λ§λ€μ΄ λ΄ μλ€! π€
μ΄λ² 4κ°μμλ APIκ° ν΄λΌμ΄μΈνΈλ‘λΆν° μ λ ₯μ λ°μ λμ μΌλ‘ μλ΅μ μμ±νλλ‘ λ§λλ ν΅μ¬ λ°©λ² λ κ°μ§, κ²½λ‘ λ§€κ°λ³μμ 쿼리 λ§€κ°λ³μλ₯Ό λ°°μλλ€.
/items/123
μμ 123
). FastAPIμμλ κ²½λ‘ λ¬Έμμ΄ μμ μ€κ΄νΈ {}
λ₯Ό μ¬μ©νμ¬ μ μνκ³ , ν¨μ μΈμλ‘ λ°μ μ¬μ©ν©λλ€.?key=value
ννλ‘ μΆκ°λμ΄ νν°λ§, μ λ ¬, νμ΄μ§ λ± λΆκ°μ μΈ μ΅μ
μ μ λ¬νλ λ° μ¬μ©λ©λλ€ (μ: /items?skip=10&limit=5
). FastAPIμμλ ν¨μ μΈμλ‘ κ°λ¨ν μ μΈνμ¬ μ¬μ©ν©λλ€.λν, νμ ννΈλ₯Ό μ¬μ©νμ¬ FastAPIκ° μλμΌλ‘ λ°μ΄ν°λ₯Ό κ²μ¦νκ³ λ³ννλλ‘ νλ κ°λ ₯ν κΈ°λ₯μ νμ©ν΄λ³΄κ³ , λ§€κ°λ³μμ κΈ°λ³Έκ°μ μ€μ νμ¬ **μ νμ (Optional)**μΌλ‘ λ§λλ λ°©λ²λ μμλ΄ λλ€. μ΄ κ°μλ₯Ό ν΅ν΄ μ¬λ¬λΆμ APIκ° ν¨μ¬ λ μ μ©νκ³ μ€μ©μ μΌλ‘ λ°μ ν κ²μ λλ€!
μ΄ κ°μλ₯Ό λ§μΉλ©΄ μ¬λ¬λΆμ λ€μμ ν μ μκ² λ©λλ€: