--- /dev/null
+# λ―Έλ€μ¨μ΄
+
+λ―Έλ€μ¨μ΄λ₯Ό **FastAPI** μμ© νλ‘κ·Έλ¨μ μΆκ°ν μ μμ΅λλ€.
+
+"λ―Έλ€μ¨μ΄"λ νΉμ *κ²½λ‘ μλ*μ μν΄ μ²λ¦¬λκΈ° μ , λͺ¨λ **μμ²**μ λν΄μ λμνλ ν¨μμ
λλ€. λν λͺ¨λ **μλ΅**μ΄ λ°νλκΈ° μ μλ λμΌνκ² λμν©λλ€.
+
+* λ―Έλ€μ¨μ΄λ μμ© νλ‘κ·Έλ¨μΌλ‘ μ€λ **μμ²**λ₯Ό κ°μ Έμ΅λλ€.
+* **μμ²** λλ λ€λ₯Έ νμν μ½λλ₯Ό μ€ν μν¬ μ μμ΅λλ€.
+* **μμ²**μ μμ© νλ‘κ·Έλ¨μ *κ²½λ‘ μλ*μΌλ‘ μ λ¬νμ¬ μ²λ¦¬ν©λλ€.
+* μ ν리μΌμ΄μ
μ *κ²½λ‘ μμ
*μμ μμ±ν **μλ΅**λ₯Ό λ°μ΅λλ€.
+* **μλ΅** λλ λ€λ₯Έ νμν μ½λλ₯Ό μ€νμν€λ λμμ ν μ μμ΅λλ€.
+* **μλ΅**λ₯Ό λ°νν©λλ€.
+
+!!! note "κΈ°μ μΈλΆμ¬ν"
+ λ§μ½ `yield`λ₯Ό μ¬μ©ν μμ‘΄μ±μ κ°μ§κ³ μλ€λ©΄, λ―Έλ€μ¨μ΄κ° μ€νλκ³ λ νμ exitμ΄ μ€νλ©λλ€.
+
+ λ§μ½ (λμ€μ λ¬Έμμμ λ€λ£°) λ°±κ·ΈλΌμ΄λ μμ
μ΄ μλ€λ©΄, λͺ¨λ λ―Έλ€μ¨μ΄κ° μ€νλκ³ *λ νμ* μ€νλ©λλ€.
+
+## λ―Έλ€μ¨μ΄ λ§λ€κΈ°
+
+λ―Έλ€μ¨μ΄λ₯Ό μμ±νκΈ° μν΄μ ν¨μ μλ¨μ `@app.middleware("http")` λ°μ½λ μ΄ν°λ₯Ό μ¬μ©ν μ μμ΅λλ€.
+
+λ―Έλ€μ¨μ΄ ν¨μλ λ€μ νλͺ©λ€μ λ°μ΅λλ€:
+
+* `request`.
+* `request`λ₯Ό λ§€κ°λ³μλ‘ λ°λ `call_next` ν¨μ.
+ * μ΄ ν¨μλ `request`λ₯Ό ν΄λΉνλ *κ²½λ‘ μμ
*μΌλ‘ μ λ¬ν©λλ€.
+ * κ·Έλ° λ€μ, *κ²½λ‘ μμ
*μ μν΄ μμ±λ `response` λ₯Ό λ°νν©λλ€.
+* `response`λ₯Ό λ°ννκΈ° μ μ μΆκ°λ‘ `response`λ₯Ό μμ ν μ μμ΅λλ€.
+
+```Python hl_lines="8-9 11 14"
+{!../../../docs_src/middleware/tutorial001.py!}
+```
+
+!!! tip "ν"
+ μ¬μ©μ μ μ ν€λλ <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers" class="external-link" target="_blank">'X-' μ λμ¬λ₯Ό μ¬μ©</a>νμ¬ μΆκ°ν μ μμ΅λλ€.
+
+ κ·Έλ¬λ λ§μ½ ν΄λΌμ΄μΈνΈμ λΈλΌμ°μ μμ λ³Ό μ μλ μ¬μ©μ μ μ ν€λλ₯Ό κ°μ§κ³ μλ€λ©΄, κ·Έκ²λ€μ CORS μ€μ ([CORS (Cross-Origin Resource Sharing)](cors.md){.internal-link target=_blank})μ <a href="https://www.starlette.io/middleware/#corsmiddleware" class="external-link" target="_blank">Starlette CORS λ¬Έμ</a>μ λͺ
μλ `expose_headers` λ§€κ°λ³μλ₯Ό μ΄μ©νμ¬ ν€λλ€μ μΆκ°νμ¬μΌν©λλ€.
+
+!!! note "κΈ°μ μ μΈλΆμ¬ν"
+ `from starlette.requests import request`λ₯Ό μ¬μ©ν μλ μμ΅λλ€.
+
+ **FastAPI**λ κ°λ°μμκ² νΈμλ₯Ό μν΄ μ΄λ₯Ό μ 곡ν©λλ€. κ·Έλ¬λ Starletteμμ μ§μ νμλμμ΅λλ€.
+
+### `response`μ μ κ³Ό ν
+
+*κ²½λ‘ μλ*μ λ°κΈ° μ `request`μ ν¨κ» μλν μ μλ μ½λλ₯Ό μΆκ°ν μ μμ΅λλ€.
+
+κ·Έλ¦¬κ³ `response` λν μμ±λ ν λ°νλκΈ° μ μ μ½λλ₯Ό μΆκ° ν μ μμ΅λλ€.
+
+μλ₯Ό λ€μ΄, μμ²μ μννκ³ μλ΅μ μμ±νλλ° κΉμ§ κ±Έλ¦° μκ° κ°μ κ°μ§κ³ μλ `X-Process-Time` κ°μ μ¬μ©μ μ μ ν€λλ₯Ό μΆκ°ν μ μμ΅λλ€.
+
+```Python hl_lines="10 12-13"
+{!../../../docs_src/middleware/tutorial001.py!}
+```
+
+## λ€λ₯Έ λ―Έλ€μ¨μ΄
+
+λ―Έλ€μ¨μ΄μ λν λ λ§μ μ 보λ [μλ ¨λ μ¬μ©μ μλ΄μ: ν₯μλ λ―Έλ€μ¨μ΄](../advanced/middleware.md){.internal-link target=\_blank}μμ νμΈν μ μμ΅λλ€.
+
+λ€μ λΆλΆμμ λ―Έλ€μ¨μ΄μ ν¨κ» <abbr title="κ΅μ°¨-μΆμ² 리μμ€ κ³΅μ ">CORS</abbr>λ₯Ό μ΄λ»κ² λ€λ£¨λμ§μ λν΄ νμΈν κ²μ
λλ€.