Browse Source

🌐 Add Japanese translation for Advanced User Guide - Additional Status Codes (#2145)

Co-authored-by: Taki Komiyama <[email protected]>
Co-authored-by: T. Tokusumi <[email protected]>
pull/2476/head
atsumi 4 years ago
committed by GitHub
parent
commit
259c55f7cd
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 37
      docs/ja/docs/advanced/additional-status-codes.md
  2. 3
      docs/ja/mkdocs.yml

37
docs/ja/docs/advanced/additional-status-codes.md

@ -0,0 +1,37 @@
# 追加のステータスコード
デフォルトでは、 **FastAPI**`JSONResponse` を使ってレスポンスを返します。その `JSONResponse` の中には、 *path operation* が返した内容が入ります。
それは、デフォルトのステータスコードか、 *path operation* でセットしたものを利用します。
## 追加のステータスコード
メインのステータスコードとは別に、他のステータスコードを返したい場合は、`Response` (`JSONResponse` など) に追加のステータスコードを設定して直接返します。
例えば、itemを更新し、成功した場合は200 "OK"のHTTPステータスコードを返す *path operation* を作りたいとします。
しかし、新しいitemも許可したいです。itemが存在しない場合は、それらを作成して201 "Created"を返します。
これを達成するには、 `JSONResponse` をインポートし、 `status_code` を設定して直接内容を返します。
```Python hl_lines="4 23"
{!../../../docs_src/additional_status_codes/tutorial001.py!}
```
!!! warning "注意"
上記の例のように `Response` を明示的に返す場合、それは直接返されます。
モデルなどはシリアライズされません。
必要なデータが含まれていることや、値が有効なJSONであること (`JSONResponse` を使う場合) を確認してください。
!!! note "技術詳細"
`from starlette.responses import JSONResponse` を利用することもできます。
**FastAPI**`fastapi.responses` と同じ `starlette.responses` を、開発者の利便性のために提供しています。しかし有効なレスポンスはほとんどStarletteから来ています。 `status` についても同じです。
## OpenAPIとAPIドキュメント
ステータスコードとレスポンスを直接返す場合、それらはOpenAPIスキーマ (APIドキュメント) には含まれません。なぜなら、FastAPIは何が返されるのか事前に知ることができないからです。
しかし、 [Additional Responses](additional-responses.md){.internal-link target=_blank} を使ってコードの中にドキュメントを書くことができます。

3
docs/ja/mkdocs.yml

@ -57,10 +57,11 @@ nav:
- tutorial/body.md
- tutorial/query-params-str-validations.md
- tutorial/header-params.md
- tutorial/cors.md
- セキュリティ:
- tutorial/security/first-steps.md
- tutorial/cors.md
- 高度なユーザーガイド:
- advanced/additional-status-codes.md
- advanced/response-directly.md
- advanced/custom-response.md
- project-generation.md

Loading…
Cancel
Save