Movatterモバイル変換


[0]ホーム

URL:


Ana içeriğe geç
Join theFastAPI Cloud waiting list 🚀
Follow@fastapi onX (Twitter) to stay updated
FollowFastAPI onLinkedIn to stay updated
Subscribe to theFastAPI and friends newsletter 🎉
sponsor
sponsor
sponsor
sponsor
sponsor
sponsor
sponsor
sponsor
sponsor
sponsor
sponsor

GraphQL

🌐 Yapay Zekâ ve İnsanlar Tarafından Çeviri

Bu çeviri, insanlar tarafından yönlendirilen bir yapay zekâ ile oluşturuldu. 🤝

Orijinal anlamın yanlış anlaşılması ya da kulağa doğal gelmeme gibi hatalar içerebilir. 🤖

Yapay zekâ LLM'ini daha iyi yönlendirmemize yardımcı olarak bu çeviriyi iyileştirebilirsiniz.

İngilizce sürüm

FastAPI,ASGI standardını temel aldığı için ASGI ile uyumlu herhangi birGraphQL kütüphanesini entegre etmek oldukça kolaydır.

Aynı uygulama içinde normal FastAPIpath operation'larını GraphQL ile birlikte kullanabilirsiniz.

İpucu

GraphQL bazı çok özel kullanım senaryolarını çözer.

Yaygınweb API'lerle karşılaştırıldığındaavantajları vedezavantajları vardır.

Kendi senaryonuz içinfaydaların,olumsuz yönleri telafi edip etmediğini mutlaka değerlendirin. 🤓

GraphQL Kütüphaneleri

AşağıdaASGI desteği olan bazıGraphQL kütüphaneleri var. BunlarıFastAPI ile kullanabilirsiniz:

Strawberry ile GraphQL

GraphQL ile çalışmanız gerekiyorsa ya da bunu istiyorsanız,Strawberry önerilen kütüphanedir; çünkü tasarımıFastAPI'nin tasarımına en yakındır ve her şeytype annotation'lar üzerine kuruludur.

Kullanım senaryonuza göre farklı bir kütüphaneyi tercih edebilirsiniz; ancak bana sorarsanız muhtemelenStrawberry'yi denemenizi önerirdim.

Strawberry'yi FastAPI ile nasıl entegre edebileceğinize dair küçük bir ön izleme:

importstrawberryfromfastapiimportFastAPIfromstrawberry.fastapiimportGraphQLRouter@strawberry.typeclassUser:name:strage:int@strawberry.typeclassQuery:@strawberry.fielddefuser(self)->User:returnUser(name="Patrick",age=100)schema=strawberry.Schema(query=Query)graphql_app=GraphQLRouter(schema)app=FastAPI()app.include_router(graphql_app,prefix="/graphql")

Strawberry hakkında daha fazlasınıStrawberry dokümantasyonunda öğrenebilirsiniz.

AyrıcaFastAPI ile Strawberry dokümanlarına da göz atın.

Starlette'teki EskiGraphQLApp

Starlette'in önceki sürümlerindeGraphene ile entegrasyon için birGraphQLApp sınıfı vardı.

Bu sınıf Starlette'te kullanımdan kaldırıldı (deprecated). Ancak bunu kullanan bir kodunuz varsa, aynı kullanım senaryosunu kapsayan veneredeyse aynı bir interface sağlayanstarlette-graphene3'e kolaycamigrate edebilirsiniz.

İpucu

GraphQL'e ihtiyacınız varsa, custom class ve type'lar yerine type annotation'lara dayandığı için yine deStrawberry'yi incelemenizi öneririm.

Daha Fazlasını Öğrenin

GraphQL hakkında daha fazlasınıresmi GraphQL dokümantasyonunda öğrenebilirsiniz.

Ayrıca yukarıda bahsedilen kütüphanelerin her biri hakkında, kendi bağlantılarından daha fazla bilgi okuyabilirsiniz.


[8]ページ先頭

©2009-2026 Movatter.jp