Portallar Web API'sine genel bakış

Portallar Web API'si, Power Pages sitelerinde daha zengin bir kullanıcı deneyimi sağlar. Web sayfalarınızdaki tüm Microsoft Dataverse tabloları genelinde oluşturma, okuma, güncelleştirme ve silme işlemleri için Portal Web API'sini kullanabilirsiniz. Örneğin, portal Web API'sini kullanarak bir form veya çok adımlı form kullanmadan yeni bir firma oluşturabilir, ilgili kişiyi güncelleştirebilirsiniz.

Önemli

  • Bu özelliğin çalışması için Power Pages sitesi sürümünüzün 9.3.3.x veya sonraki bir sürüm olması gerekir.
  • Portallar Web API'si portal sayfaları içinde daha zengin bir kullanıcı deneyimi oluşturmayı amaçlar. Üçüncü taraf hizmetler veya uygulama tümleştirmesi için uygun değildir. Diğer Power Pages siteleriyle tümleştirme için portal Web API'sini kullanmak desteklenmez.
  • Portal Web API'si işlemleri hesaplar, ilgili kişiler veya özel tablolar gibi verilerle ilgili tablolarla sınırlıdır. Tablo meta verileri veya portal yapılandırma tablosu verilerini yapılandırma (Örneğin, adx_contentsnippet, adx_entityform veya adx_entitylist gibi portal tablolarını yapılandırmak) portal Web API'sinde desteklenmez. Tam liste için bu konunun ilerleyen bölümlerindeki desteklenmeyen yapılandırma tablolarına gidin.
  • Portallar Web API, sunucu tarafı önbellekten yararlanır, bu nedenle ardıl Web API çağrıları ilk çağrılardan daha hızlıdır. Portal sunucusu tarafı önbelleğinin temizlenmesinin geçici performans düşüşüne neden olduğunu unutmayın.
  • Portal Web API'si işlemleri için bir Power Pages lisansı gerekir. Örneğin, anonim kullanıcıların yaptığı Web API'si çağrıları anonim kullanıcı kapasitesinden düşülür. Kimliği doğrulanmış kullanıcılar (iç veya dış) tarafından yapılan Web API'si çağrıları sayfa görünümlerine dahil edilmez ancak uygun kimliği doğrulanmış kullanıcı kapasitesi lisansları gerektirir. Daha fazla bilgi: Power Pages lisanslamayla ilgili SSS

Web API işlemleri

Portallar Web API'si, Dataverse API'sini kullanarak gerçekleştirebileceğiniz Dataverse işlemleri için bir dizi yetenek alt kümesi sunar. Öğrenme eğrisini azaltmak için API biçimini mümkün olduğunca benzer tuttuk.

Not

Web API işlemleri büyük ve küçük harf duyarlıdır.

Power Pages ile kullanılabilen Web API'si işlemleri

Not

Portallar Web API'si kullanılarak eylemlerin ve işlevlerin çağrılması desteklenmez.

Web API'si için site ayarları

Portalınızın Portallar Web API'sini etkinleştirmek için site ayarını etkinleştirmeniz gerekir. Ayrıca Portal Web API'siyle değiştirilebilen veya değiştirilemeyen tablo alanlarını belirleyen alan düzeyinde Web API'sini de yapılandırabilirsiniz.

Not

Bu ayarlar için mantıksal ad tablosunu kullanın (örneğin firma).

Site ayarı adı Veri Akışı Açıklaması
Webapi/<tablo adı>/etkin <tablo adı> için Web API'sini etkinleştirir veya devre dışı bırakır.
Varsayılan:False
Geçerli değerler:True, False
Webapi/<tablo adı>/alanlar Web API'si ile değiştirilebilen özniteliklerin virgülle ayrılmış listesini tanımlar.
Olası değerler:
- Tüm öznitelikler:*
- Belirli öznitelikler:attr1,attr2,attr3
Not: Değer bir yıldız (*) veya alan adlarının virgülle ayrılmış bir listesi olmalıdır.
Önemli: Bu zorunlu bir site ayarıdır. Bu ayar eksikse, "Bu varlık için alan tanımlanmadı" hatasını görürsünüz.
Webapi/error/innererror InnerError'ı etkinleştirir veya devre dışı bırakır.
Varsayılan:False
Geçerli değerler:True, False
Webapi/<tablo adı>/disableodatafilter OData filtresini etkinleştirir veya devre dışı bırakır.
Varsayılan:False
Geçerli değerler:True, False Daha fazla bilgi için bkz. bilinen sorunlar. Site ayarı portal sürümü 9.4.10.74 veya daha sonraki portal sürümlerinde kullanılabilir.

Not

Değişikliklerin etkin olabilmesi için site ayarlarının etkin olarak ayarlanması gerekir .

Örneğin, kimliği doğrulanmış kullanıcıların bu varlık üzerinde oluşturma, güncelleştirme ve silme işlemleri gerçekleştirmesine izin verilen Servis Talebi tablosunun Web API'sini kullanıma açmak için site ayarları aşağıdaki tabloda gösterilir.

Site Ayarı Adı Site Ayarı Değeri
Webapi/incident/enabled true
Webapi/incident/fields attr1, attr2, attr3

Portallar Web API'si ile güvenlik

Tablo izinlerini kullanarak portaldaki ayrı kayıtlar için kayıt tabanlı güvenlik yapılandırabilirsiniz. Portal Web API tablo (varlık) kayıtlarına erişir ve ilgili web rolleri aracılığıyla kullanıcılara verilen tablo izinlerini izler.

Portal Web API'sı kullanırken bir tablodaki her sütun için ayrıcalık tanımlamak üzere sütun izinlerini yapılandırabilirsiniz.

Portallar Web API'si istekleri için kimlik doğrulama

Kimlik doğrulama ve yetkilendirme uygulama oturumu tarafından yönetildiğinden, kimlik doğrulaması kodu eklemeniz gerekmez. Tüm Web API çağrıları, Siteler Arası İstek Sahteciliği (CSRF) belirtecini içermelidir.

EntitySetName kullanma

Kodunuzda portallar Web API'sini kullanan Dataverse tablolarına başvurulduğunda, EntitySetName değerini kullanmanız gerekir. Örneğin, firma tablosuna erişmek için kod sözdizimi firmalar öğesinin EntitySetName değerini (/_api/accounts()) kullanır.

Not

Site ayarları için tablo mantıksal adını kullanın (örneğin firma).

Belirli tabloların EntitySetName öğesini aşağıdaki adımları izleyerek belirleyebilirsiniz:

  1. https://make.powerapps.com'e git

  2. Yan panelden Dataverse sekmesini seçin ve tabloyu seçin.

  3. ... (Komutlar seçeneği) simgesini seçin ve ardından tablonun EntitySetName öğesini panonuza kopyalamak için Gelişmiş, Araçlar ve Ayarlanmış adı kopyala seçeneğine gidin.

    Dataverse tablosunun EntitySetName öğesini bulma.

Gizlilik yasaları ve yönetmelikleri

Tüm istek üst bilgilerinde, denetleme amacıyla iletilen bir ilgili kişi kimliği vardır. Anonim kullanıcı için bu null olarak geçilir.

Denetim günlüğü etkinse, Kullanıcı Office 365 denetim günlüğündeki tüm denetim olaylarını görebilir.

Office 365 denetim günlüğü.

Daha fazla bilgi:
Etkinlik günlüğünü etkinleştirme ve kullanma
Denetim günlüğü kayıtlarını verme, yapılandırma ve görüntüleme

Desteklenmeyen yapılandırma tabloları

Portal Web API'si aşağıdaki yapılandırma tabloları için kullanılamaz:

adx_contentaccesslevel

adx_contentsnippet

adx_entityform

adx_entityformmetadata

adx_entitylist

adx_entitypermission

adx_entitypermission_webrole

adx_externalidentity

adx_pagealert

adx_pagenotification

adx_pagetag

adx_pagetag_webpage

adx_pagetemplate

adx_portallanguage

adx_publishingstate

adx_publishingstatetransitionrule

adx_publishingstatetransitionrule_webrole

adx_redirect

adx_setting

adx_shortcut

adx_sitemarker

adx_sitesetting

adx_urlhistory

adx_webfile

adx_webfilelog

adx_webform

adx_webformmetadata

adx_webformsession

adx_webformstep

adx_weblink

adx_weblinkset

adx_webnotificationentity

adx_webnotificationurl

adx_webpage

adx_webpage_tag

adx_webpageaccesscontrolrule

adx_webpageaccesscontrolrule_webrole

adx_webpagehistory

adx_webpagelog

adx_webrole_systemuser

adx_website

adx_website_list

adx_website_sponsor

adx_websiteaccess

adx_websiteaccess_webrole

adx_websitebinding

adx_websitelanguage

adx_webtemplate

Bilinen sorunlar

Kullanıcılar, Ana, İlgili Kişi veya Firma kapsamları sorguya ek koşullar eklediğinde, birden çok katmanlı bir-çok veya çok-çoktablo izinlerine sahip tablolar için bir GET Web API'si isteği çağırdıklarında bir CDS hatası alır.

Bu sorunu gidermek için, önerilen çözüm OData sorgusunda FetchXML kullanmaktır.

Alternatif olarak, Webapi/<tablo adı>/disableodatafilter site ayarını True olarak ayarlayın.

Önemli

Webapi/<tablo adı>/disableodatafilter site ayarını True olarak değiştirmek Web API'si GET çağrıları için daha düşük performansa neden olabilir.

Site ayarı portal sürümü 9.4.10.74 veya daha sonraki portal sürümlerinde kullanılabilir.

Sonraki adım

Portal Web API kullanarak verileri sorgulama

Ayrıca bkz.