Yaygın Sorunlar
Yaygın SorunlarUygulama Şifreleri çalışmıyor

Uygulama Şifreleri çalışmıyor

GraphQL endpoint'ine yapılan isteklerin kimliğini doğrulamak için uygulama şifreleri kullanıldığında bunların çalışmaması, sitede yüklü bir eklentiyle çakışmadan kaynaklanıyor olabilir. Bu durum özellikle WooCommerce sitede yüklü ve etkin olduğunda ortaya çıkabilir.

Bir Application Password kullanan GraphQL endpoint isteğinin kullanıcı kimliğini doğrulayamaması ve Gato GraphQL'de aşağıdakilerden birini yapmış olmanız durumunda:

  • GraphQL Single Endpoint'in yolunu güncellediyseniz
  • Custom Endpoints veya Persisted Queries'in temel slug'ını güncellediyseniz
  • Herhangi bir endpoint'i devre dışı bıraktıysanız (ilgili modülü devre dışı bırakarak)

...çakışmayı önlemek için aynı değişikliği bir hook aracılığıyla da uygulamanız gerekir.

Bu neden yaşanır

WooCommerce'in başlatılması ile Gato GraphQL'in servis konteyner kurulumu arasında bir zamanlama çakışması bulunmaktadır.

WooCommerce, kendi başlatma süreci sırasında application_password_is_api_request filtresini tetikler. Gato GraphQL henüz başlatılmadığından, isteğin bir GraphQL endpoint'inden gelip gelmediğini belirlemek ve kimlik doğrulama için uygulama şifrelerinin kullanılmasını etkinleştirmek amacıyla doğru endpoint yollarını veritabanından alamaz.

Geçici çözüm

application_password_is_api_request filtresi WooCommerce (veya başka bir eklenti) tarafından tetiklendiğinde, Gato GraphQL GraphQL endpoint'leri için varsayılan yolları kullanır.

Dolayısıyla, eklenti Ayarları aracılığıyla herhangi bir genel endpoint'in yolunu değiştirirseniz, aynı değişikliği hook aracılığıyla da uygulamanız gerekir.

Çözüm için GraphQL endpoint yolu güncellemelerini hook'lar aracılığıyla çoğaltma kılavuzunu okuyun.