You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

4.3 KiB

Path Operation Yapılandırması

Onu yapılandırmak için path operation decorator’ınıza geçebileceğiniz çeşitli parametreler vardır.

/// warning | Uyarı

Bu parametrelerin path operation function’ınıza değil, doğrudan path operation decorator’ına verildiğine dikkat edin.

///

Response Status Code

Path operation’ınızın response’unda kullanılacak (HTTP) status_code’u tanımlayabilirsiniz.

404 gibi int kodu doğrudan verebilirsiniz.

Ancak her sayısal kodun ne işe yaradığını hatırlamıyorsanız, status içindeki kısayol sabitlerini kullanabilirsiniz:

{* ../../docs_src/path_operation_configuration/tutorial001_py310.py hl[1,15] *}

Bu status code response’da kullanılacak ve OpenAPI şemasına eklenecektir.

/// note | Teknik Detaylar

from starlette import status da kullanabilirsiniz.

FastAPI, geliştirici olarak işinizi kolaylaştırmak için starlette.status’u fastapi.status olarak da sunar. Ancak kaynağı doğrudan Starlette’tir.

///

Tags

Path operation’ınıza tag ekleyebilirsiniz; tags parametresine str öğelerinden oluşan bir list verin (genellikle tek bir str):

{* ../../docs_src/path_operation_configuration/tutorial002_py310.py hl[15,20,25] *}

Bunlar OpenAPI şemasına eklenecek ve otomatik dokümantasyon arayüzleri tarafından kullanılacaktır:

Enum ile Tags

Büyük bir uygulamanız varsa, zamanla birden fazla tag birikebilir ve ilişkili path operation’lar için her zaman aynı tag’i kullandığınızdan emin olmak isteyebilirsiniz.

Bu durumlarda tag’leri bir Enum içinde tutmak mantıklı olabilir.

FastAPI bunu düz string’lerde olduğu gibi aynı şekilde destekler:

{* ../../docs_src/path_operation_configuration/tutorial002b_py310.py hl[1,8:10,13,18] *}

Özet ve açıklama

Bir summary ve description ekleyebilirsiniz:

{* ../../docs_src/path_operation_configuration/tutorial003_py310.py hl[17:18] *}

Docstring’den Açıklama

Açıklamalar genelde uzun olur ve birden fazla satıra yayılır; bu yüzden path operation açıklamasını, fonksiyonun içinde docstring olarak tanımlayabilirsiniz; FastAPI de onu buradan okur.

Docstring içinde Markdown yazabilirsiniz; doğru şekilde yorumlanır ve gösterilir (docstring girintisi dikkate alınarak).

{* ../../docs_src/path_operation_configuration/tutorial004_py310.py hl[17:25] *}

Interactive docs’ta şöyle kullanılacaktır:

Response Açıklaması

response_description parametresi ile response açıklamasını belirtebilirsiniz:

{* ../../docs_src/path_operation_configuration/tutorial005_py310.py hl[18] *}

/// note | Not

response_description özellikle response’u ifade eder; description ise genel olarak path operation’ı ifade eder.

///

/// tip | İpucu

OpenAPI, her path operation için bir response description zorunlu kılar.

Bu yüzden siz sağlamazsanız, FastAPI otomatik olarak "Successful response" üretir.

///

Bir path operation’ı Deprecate Etmek

Bir path operation’ı kaldırmadan, deprecated olarak işaretlemeniz gerekiyorsa deprecated parametresini verin:

{* ../../docs_src/path_operation_configuration/tutorial006_py310.py hl[16] *}

Interactive docs’ta deprecated olduğu net şekilde işaretlenecektir:

Deprecated olan ve olmayan path operation’ların nasıl göründüğüne bakın:

Özet

Path operation’larınızı, path operation decorator’larına parametre geçirerek kolayca yapılandırabilir ve metadata ekleyebilirsiniz.