Share via


Azure İşlevleri ile Azure Static Web Apps'de API desteği

Ön uç web uygulamaları genellikle veriler ve hizmetler için geri çağırma uç API'leridir. Varsayılan olarak Azure Static Web Apps, Azure İşlevleri aracılığıyla yerleşik sunucusuz API uç noktaları sağlar.

Statik Web Uygulamaları'ndaki Azure İşlevleri API'leri barındırma planına bağlı olarak iki olası yapılandırmada kullanılabilir:

  • Yönetilen işlevler: Varsayılan olarak, statik web uygulamasının API'si bazı kısıtlamalarla ilişkili Azure Static Web Apps tarafından yönetilen ve dağıtılan bir Azure İşlevleri uygulamasıdır.

  • Kendi işlevlerinizi getirin: İsteğe bağlı olarak, Azure İşlevleri tüm özelliklerini içeren herhangi bir plan türünde mevcut bir Azure İşlevleri uygulaması sağlayabilirsiniz. Bu yapılandırmayla, İşlevler uygulaması için ayrı bir dağıtımı işlemek sizin sorumluluğundadır.

Aşağıdaki tabloda yönetilen ve mevcut işlevlerin kullanılması arasındaki farklar karşıttır.

Özellik Yönetilen İşlevler Kendi İşlevlerinizi getirin
Azure İşlevleri tetikleyicilerine ve bağlamalarına erişim Yalnızca HTTP Tümünü
Desteklenen Azure İşlevleri çalışma zamanları1 Node.js 12
Node.js 14
Node.js 16
Node.js 18
.NET Core 3.1
.NET 6.0
.NET 7.0
Python 3.8
Python 3.9
Python 3.10
Tümünü
Desteklenen Azure İşlevleri barındırma planları Tüketim Tüketim
Premium
Ayrılmış
Kullanıcı kimlik doğrulaması ve rol tabanlı yetkilendirme verilerine doğrudan erişim ile tümleşik güvenlik
Özel CORS kuralları gerektirmeden yolu web uygulaması için güvenli bir şekilde kullanılabilir hale getiren /api yönlendirme tümleştirmesi.
Arka uç işlem dinamik genel dağıtımı için dağıtılmış işlevler (önizleme ).
Dayanıklı İşlevler programlama modeli
Yönetilen kimlik
Azure Uygulaması Hizmet Kimlik Doğrulaması ve Yetkilendirme belirteci yönetimi
Azure Static Web Apps dışında kullanılabilen API işlevleri
Key Vault başvuruları

1 Yönetilen işlevlerde çalışma zamanı sürümünü belirtmek için ön uç uygulamanıza bir yapılandırma dosyası ekleyin ve özelliğini ayarlayınapiRuntime. Destek, Azure İşlevleri dil çalışma zamanı destek ilkesine tabidir.

Statik Web Uygulamaları için API seçenekleri aşağıdaki Azure hizmetlerini içerir:

Daha fazla bilgi için API'lere genel bakış bölümüne bakın.

Not

Dağıtılmış işlevler yönetilen işlevlerle kullanılabilir. Dağıtılmış işlevler, yönetilen işlevlerinizi otomatik olarak yüksek istek yüklerinin bölgelerine dağıtır.

Yapılandırma

API uç noktaları, web uygulaması tarafından rota üzerinden api kullanılabilir.

Yönetilen işlevler Kendi işlevlerinizi getirin
/api Yol sabit olsa da, yönetilen işlevler uygulamasının kaynak kod klasörü konumu üzerinde denetiminiz vardır. Deponuzun .github/workflows klasöründe bulunan iş akışı YAML dosyasını düzenleyerek bu konumu değiştirebilirsiniz. Rotaya yönelik /api istekler mevcut Azure İşlevleri uygulamanıza gönderilir.

Sorun giderme ve günlükler

Günlükler yalnızca Uygulama Analizler eklediğinizde kullanılabilir.

Yönetilen işlevler Kendi işlevlerinizi getirin
Statik web uygulamanızda Uygulama Analizler etkinleştirerek günlüğü açın. Azure İşlevleri uygulamanızda Uygulama Analizler'yi etkinleştirerek günlüğü açın.

Sınırlamalar

Statik Web Uygulamaları API kısıtlamalarına ek olarak, aşağıdaki kısıtlamalar Azure İşlevleri API'ler için de geçerlidir:

Yönetilen işlevler Kendi işlevlerinizi getirin
  • Tetikleyiciler ve bağlamalar HTTP ile sınırlıdır.
  • Azure İşlevleri uygulaması Node.js 12, Node.js 14, Node.js 16, Node.js 18 (genel önizleme), .NET Core 3.1, .NET 6.0, Python 3.8, Python 3.9 veya Python 3.10'da olmalıdır.
  • Bazı uygulama ayarları hizmet tarafından yönetilir, bu nedenle aşağıdaki ön ekler çalışma zamanı tarafından ayrılır:
    • APPSETTING_, AZUREBLOBSTORAGE_, AZUREFILESSTORAGE_, AZURE_FUNCTION_, CONTAINER_, DIAGNOSTICS_, DOCKER_, FUNCTIONS_, IDENTITY_, MACHINEKEY_, MAINSITE_, MSDEPLOY_, SCMSITE_, SCM_, WEBSITES_, WEBSITE_, WEBSOCKET_, AzureWeb
  • Bazı uygulama etiketleri hizmet tarafından dahili olarak kullanılır. Bu nedenle, aşağıdaki etiketler ayrılmıştır:
    • AccountId, EnvironmentId, FunctionAppId.
  • İşlevler uygulaması dağıtımını yönetmek sizin sorumluluğundadır.

Sonraki adımlar