]> git.ipfire.org Git - thirdparty/fastapi/fastapi.git/commitdiff
🌐 Add Korean translation for `docs/ko/docs/advanced/openapi-webhooks.md` (#12752)
authorSaeye Lee <62229734+saeye@users.noreply.github.com>
Tue, 26 Nov 2024 22:08:57 +0000 (07:08 +0900)
committerGitHub <noreply@github.com>
Tue, 26 Nov 2024 22:08:57 +0000 (22:08 +0000)
docs/ko/docs/openapi-webhooks.md [new file with mode: 0644]

diff --git a/docs/ko/docs/openapi-webhooks.md b/docs/ko/docs/openapi-webhooks.md
new file mode 100644 (file)
index 0000000..96339aa
--- /dev/null
@@ -0,0 +1,55 @@
+# OpenAPI μ›Ήν›…(Webhooks)
+
+API **μ‚¬μš©μž**μ—κ²Œ νŠΉμ • **이벀트**κ°€ λ°œμƒν•  λ•Œ *κ·Έλ“€*의 μ•±(μ‹œμŠ€ν…œ)에 μš”청을 λ³΄λ‚΄ **μ•Œλ¦Ό**을 μ „달할 μˆ˜ μžˆλ‹€λŠ” κ²ƒμ„ μ•Œλ¦¬κ³  μ‹Άμ€ κ²½μš°κ°€ μžˆμŠ΅λ‹ˆλ‹€.
+
+즉, μΌλ°˜μ μœΌλ‘œ μ‚¬μš©μžκ°€ API에 μš”청을 λ³΄λ‚΄λŠ” κ²ƒκ³ΌλŠ” λ°˜λŒ€λ‘œ, **API**(λ˜λŠ” μ•±)κ°€ **μ‚¬μš©μžμ˜ μ‹œμŠ€ν…œ**(κ·Έλ“€μ˜ APIλ‚˜ μ•±)으둜 **μš”μ²­μ„ λ³΄λ‚΄λŠ”** μƒν™©μ„ μ˜λ―Έν•©λ‹ˆλ‹€.
+
+이λ₯Ό ν”νžˆ **μ›Ήν›…(Webhook)**이라고 λΆ€λ¦…λ‹ˆλ‹€.
+
+## μ›Ήν›… μŠ€ν…
+
+**μ½”λ“œμ—μ„œ** μ›Ήν›…μœΌλ‘œ λ³΄λ‚Ό λ©”μ‹œμ§€, μ¦‰ μš”μ²­μ˜ **λ°”λ””(body)**λ₯Ό μ •μ˜ν•˜λŠ” κ²ƒμ΄ μΌλ°˜μ μΈ ν”„λ‘œμ„ΈμŠ€μž…λ‹ˆλ‹€.
+
+μ•±μ—μ„œ ν•΄λ‹Ή μš”μ²­μ΄λ‚˜ μ΄λ²€νŠΈλ₯Ό μ „솑할 **μ‹œμ **을 μ •μ˜ν•©λ‹ˆλ‹€.
+
+**μ‚¬μš©μž**λŠ” μ•±μ΄ ν•΄λ‹Ή μš”청을 λ³΄λ‚Ό **URL**을 μ •μ˜ν•©λ‹ˆλ‹€. (예: μ›Ή λŒ€μ‹œλ³΄λ“œμ—μ„œ μ„€μ •)
+
+μ›Ήν›…μ˜ URL을 λ“±λ‘ν•˜λŠ” λ°©λ²•κ³Ό μ΄λŸ¬ν•œ μš”청을 μ‹€μ œλ‘œ μ „μ†‘ν•˜λŠ” μ½”λ“œμ— λŒ€ν•œ λͺ¨λ“  λ‘œμ§μ€ μ—¬λŸ¬λΆ„μ—κ²Œ λ‹¬λ € μžˆμŠ΅λ‹ˆλ‹€. μ›ν•˜λŠ”λŒ€λ‘œ **고유의 μ½”λ“œ**λ₯Ό μž‘μ„±ν•˜λ©΄ λ©λ‹ˆλ‹€.
+
+## **FastAPI**와 OpenAPI둜 μ›Ήν›… λ¬Έμ„œν™”ν•˜κΈ°
+
+**FastAPI**λ₯Ό μ‚¬μš©ν•˜μ—¬ OpenAPI와 ν•¨κ»˜ μ›Ήν›…μ˜ μ΄λ¦„, μ•±μ΄ λ³΄λ‚Ό μˆ˜ μžˆλŠ” HTTP μž‘μ—… μœ ν˜•(예: `POST`, `PUT` λ“±), κ·Έλ¦¬κ³  λ³΄λ‚Ό μš”μ²­μ˜ **λ°”λ””**λ₯Ό μ •μ˜ν•  μˆ˜ μžˆμŠ΅λ‹ˆλ‹€.
+
+이λ₯Ό ν†΅ν•΄ μ‚¬μš©μžκ°€ **μ›Ήν›…** μš”청을 μˆ˜μ‹ ν•  **API κ΅¬ν˜„**을 ν›¨μ”¬ μ‰½κ²Œ ν•  μˆ˜ μžˆμœΌλ©°, κ²½μš°μ— λ”°λΌ μ‚¬μš©μž API μ½”λ“œμ˜ μΌλΆ€λ₯Ό μžλ™ μƒμ„±ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.
+
+/// info
+
+웹훅은 OpenAPI 3.1.0 μ΄μƒμ—μ„œ μ§€μ›λ˜λ©°, FastAPI `0.99.0` μ΄μƒ λ²„μ „μ—μ„œ μ‚¬μš©ν•  μˆ˜ μžˆμŠ΅λ‹ˆλ‹€.
+
+///
+
+## μ›Ήν›…이 ν¬ν•¨λœ μ•± λ§Œλ“€κΈ°
+
+**FastAPI** μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ λ§Œλ“€ λ•Œ, `webhooks` μ†μ„±μ„ μ‚¬μš©ν•˜μ—¬ *μ›Ήν›…*을 μ •μ˜ν•  μˆ˜ μžˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” `@app.webhooks.post()`와 κ°™μ€ λ°©μ‹μœΌλ‘œ *경둜(path) μž‘μ—…*을 μ •μ˜ν•˜λŠ” κ²ƒκ³Ό λΉ„μŠ·ν•©λ‹ˆλ‹€.
+
+{* ../../docs_src/openapi_webhooks/tutorial001.py hl[9:13,36:53] *}
+
+μ΄λ ‡κ²Œ μ •μ˜ν•œ μ›Ήν›…은 **OpenAPI** μŠ€ν‚€λ§ˆμ™€ μžλ™ **λ¬Έμ„œν™” UI**에 ν‘œμ‹œλ©λ‹ˆλ‹€.
+
+/// info
+
+`app.webhooks` κ°μ²΄λŠ” μ‚¬μ‹€ `APIRouter`일 λΏμ΄λ©°, μ—¬λŸ¬ νŒŒμΌλ‘œ μ•±μ„ κ΅¬μ„±ν•  λ•Œ μ‚¬μš©ν•˜λŠ” κ²ƒκ³Ό λ™μΌν•œ νƒ€μž…μž…λ‹ˆλ‹€.
+
+///
+
+μ›Ήν›…μ—μ„œλŠ” μ‹€μ œ **경둜(path)** (예: `/items/`)λ₯Ό μ„ μ–Έν•˜μ§€ μ•ŠλŠ” μ μ— μœ μ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€. μ—¬κΈ°μ„œ μ „λ‹¬ν•˜λŠ” ν…μŠ€νŠΈλŠ” **μ‹λ³„μž**둜, μ›Ήν›…μ˜ μ΄λ¦„(이벀트 μ΄λ¦„)μž…λ‹ˆλ‹€. μ˜ˆλ₯Ό λ“€μ–΄, `@app.webhooks.post("new-subscription")`μ—μ„œ μ›Ήν›… μ΄λ¦„은 `new-subscription`μž…λ‹ˆλ‹€.
+
+μ΄λŠ” μ‹€μ œ **URL κ²½λ‘œ**λŠ” **μ‚¬μš©μž**κ°€ λ‹€λ₯Έ λ°©λ²•(예: μ›Ή λŒ€μ‹œλ³΄λ“œ)을 ν†΅ν•΄ μ§€μ •ν•˜λ„λ‘ κΈ°λŒ€λ˜κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€.
+
+### λ¬Έμ„œ ν™•μΈν•˜κΈ°
+
+이제 μ•±μ„ μ‹œμž‘ν•˜κ³  <a href="http://127.0.0.1:8000/docs" class="external-link" target="_blank">http://127.0.0.1:8000/docs</a>둜 μ΄λ™ν•΄ λ΄…μ‹œλ‹€.
+
+λ¬Έμ„œμ—μ„œ κΈ°μ‘΄ *경둜 μž‘μ—…*뿐만 μ•„λ‹ˆλΌ **μ›Ήν›…**도 ν‘œμ‹œλœ κ²ƒμ„ ν™•인할 μˆ˜ μžˆμŠ΅λ‹ˆλ‹€:
+
+<img src="/img/tutorial/openapi-webhooks/image01.png">