แชร์ผ่าน


ภาพรวม Web API ของพอร์ทัล

หมายเหตุ

พอร์ทัล Power Apps คือ Power Pages โดยมีผลในวันที่ 12 ตุลาคม 2022 ข้อมูลเพิ่มเติม: Microsoft Power Pages มีให้ใช้งานทั่วไป (บล็อก)
ในไม่ช้าเราจะย้ายและรวมคู่มือพอร์ทัล Power Apps เข้ากับ คู่มือ Power Pages

Web API ของพอร์ทัลช่วยให้ประสบการณ์ผู้ใช้ที่สมบูรณ์ยิ่งขึ้นภายในหน้าของพอร์ทัล Power Apps คุณสามารถใช้ Web API เพื่อทำการสร้าง อ่าน ปรับปรุง และลบการดำเนินการในตาราง Microsoft Dataverse ทั้งหมดจากหน้าพอร์ทัลของคุณ ตัวอย่างเช่น คุณสามารถสร้างบัญชีใหม่ ปรับปรุงผู้ติดต่อ หรือเปลี่ยน สิทธิ์ในตาราง สำหรับผลิตภัณฑ์โดยใช้ Web API ของพอร์ทัลแทนแอปการจัดการพอร์ทัล

หมายเหตุ

คุณยังสามารถใช้ Web API ของพอร์ทัลใน Power Pages ได้ด้วย ข้อมูลเพิ่มเติม: Power Pages คืออะไร

ข้อสำคัญ

  • รุ่นพอร์ทัลของคุณต้องเป็น 9.3.3.x หรือใหม่กว่าเพื่อให้คุณลักษณะนี้ทำงานได้
  • Web API ของพอร์ทัลถูกสร้างเพื่อสร้างประสบการณ์ผู้ใช้ที่สมบูรณ์ยิ่งขึ้นภายในหน้าพอร์ทัล ไม่เหมาะสำหรับบริการของบุคคลที่สาม หรือการรวมแอปพลิเคชัน การใช้ Web API ของพอร์ทัลเพื่อรวมเข้ากับไซต์ของพอร์ทัล Power Apps อื่นๆ ยังไม่รองรับเช่นกัน
  • การดำเนินการ API เว็บของพอร์ทัลจำกัดเฉพาะตารางที่เกี่ยวข้องกับข้อมูล—ตัวอย่างเช่น บัญชี ผู้ติดต่อ หรือตารางที่คุณกำหนดเอง การกำหนดค่าเมตาดาต้าของตารางหรือข้อมูลตารางการกำหนดค่าของพอร์ทัล—ตัวอย่างเช่น การกำหนดค่าตารางพอร์ทัล เช่น adx_contentsnippet, adx_entityform หรือ adx_entitylist—ไม่รองรับ API เว็บของพอร์ทัล สำหรับรายการทั้งหมด ไปที่ ตารางการกำหนดค่าที่ไม่รองรับ ต่อไปในหัวข้อนี้
  • Web API ของพอร์ทัลได้รับประโยชน์จาก การแคชฝั่งเซิร์ฟเวอร์ ดังนั้น การเรียกไปยัง Web API ในภายหลังจึงเร็วกว่าการเรียกครั้งแรก โปรดทราบว่าการล้างแคชฝั่งเซิร์ฟเวอร์ของพอร์ทัลจะทำให้ประสิทธิภาพลดลงชั่วคราว
  • การดำเนินการ Web API ของพอร์ทัลต้องการสิทธิ์การใช้งานพอร์ทัลของ Power Apps ตัวอย่างเช่น การเรียก API สำหรับเว็บที่ทำโดยผู้ใช้ที่ไม่ระบุชื่อจะนับรวมกับความสามารถที่รองรับการดูเพจ การเรียก API สำหรับเว็บที่ทำโดยผู้ใช้ที่ได้รับการรับรองความถูกต้อง (ภายในหรือภายนอก) จะไม่นับรวมในการดูเพจ แต่ต้องมีใบอนุญาตที่ใช้งานได้ ข้อมูลเพิ่มเติม: คำถามที่พบบ่อยเกี่ยวกับการอนุญาตให้ใช้สิทธิ์พอร์ทัล Power Apps

การดำเนินการของ Web API

Web API ของพอร์ทัลมีความสามารถย่อยสำหรับการดำเนินการ Dataverse ที่คุณสามารถทำได้โดยใช้ API ของ Dataverse เรายังคงรักษารูปแบบ API ให้ใกล้เคียงกันมากที่สุด เพื่อลดช่วงการเรียนรู้

หมายเหตุ

การดำเนินการของ Web API คำนึงตัวพิมพ์ใหญ่-เล็ก

การดำเนินการของ Web API พร้อมใช้งานในพอร์ทัล

หมายเหตุ

ไม่รองรับการเรียก การดำเนินการ และ ฟังก์ชัน โดยใช้ Web API ของพอร์ทัล

การตั้งค่าไซต์สำหรับ Web API

คุณต้องเปิดใช้งานการตั้งค่าไซต์เพื่อเปิดใช้งาน Web API ของพอร์ทัลสำหรับพอร์ทัลของคุณ นอกจากนี้ คุณยังสามารถกำหนดค่า Web API ระดับฟิลด์ที่กำหนดฟิลด์ตารางที่สามารถหรือไม่สามารถแก้ไขได้ด้วย Web API ของพอร์ทัล

หมายเหตุ

ใช้ตาราง ชื่อตรรกะ สำหรับการตั้งค่าเหล่านี้ (เช่น บัญชีผู้ใช้)

ชื่อการตั้งค่าไซต์ Description
Webapi/<table name>/enabled เปิดหรือปิดใช้งาน Web API สำหรับ <table name>
ค่าเริ่มต้น: False
ค่าที่ถูกต้อง: True False
Webapi/<table name>/fields กำหนดรายการแอตทริบิวต์ที่คั่นด้วยจุลภาคที่สามารถแก้ไขได้ด้วย Web API
ค่าที่เป็นไปได้:
- แอตทริบิวต์ทั้งหมด: *
- แอตทริบิวต์เฉพาะ: attr1,attr2,attr3
หมายเหตุ: ค่าต้องเป็นเครื่องหมายดอกจัน (*) หรือรายการชื่อฟิลด์ที่คั่นด้วยจุลภาค
สำคัญ: นี่เป็นการตั้งค่าไซต์บังคับ เมื่อการตั้งค่านี้หายไป คุณจะเห็นข้อผิดพลาด "ไม่ได้กำหนดฟิลด์สำหรับเอนทิตีนี้"
Webapi/ข้อผิดพลาด/innererror เปิดใช้งานหรือปิดใช้งาน InnerError
ค่าเริ่มต้น: False
ค่าที่ถูกต้อง: True False
Webapi/<table name>/disableodatafilter เปิดใช้งานหรือปิดใช้งานตัวกรอง OData
ค่าเริ่มต้น: False
ค่าที่ถูกต้อง: True, False ดู ปัญหาที่ทราบ สำหรับข้อมูลเพิ่มเติม การตั้งค่าไซต์มีอยู่ในพอร์ทัลเวอร์ชัน 9.4.10.74 หรือที่ใหม่กว่า

หมายเหตุ

การตั้งค่าไซต์จะต้องตั้งค่าเป็น ใช้งานอยู่ เพื่อให้การเปลี่ยนแปลงมีผล

ตัวอย่างเช่น เพื่อแสดง API สำหรับเว็บสำหรับตาราง Case ที่ผู้ใช้ที่ได้รับการรับรองความถูกต้องได้รับอนุญาตให้ดำเนินการสร้าง อัปเดต และลบการดำเนินการในเอนทิตีนี้ การตั้งค่าไซต์จะแสดงในตารางต่อไปนี้

ชื่อการตั้งค่าไซต์ ค่าการตั้งค่าไซต์
Webapi/เหตุการณ์/เปิดใช้งาน จริง
Webapi/เหตุการณ์/ฟิลด์ attr1, attr2, attr3

การรักษาความปลอดภัยด้วย Web API ของพอร์ทัล

คุณสามารถกำหนดค่าการรักษาความปลอดภัยตามเรกคอร์ดให้กับแต่ละเรกคอร์ดในพอร์ทัลได้โดยใช้ สิทธิ์ในตาราง Web API ของพอร์ทัลเข้าถึงเรกคอร์ดตาราง (เอนทิตี) และติดตามสิทธิ์ของตารางที่มอบให้กับผู้ใช้ผ่าน บทบาทเว็บ ที่เกี่ยวข้อง

คุณสามารถกำหนดค่า สิทธิ์ของคอลัมน์ เพื่อกำหนดสิทธิ์การใช้งานเพิ่มเติมให้กับแต่ละคอลัมน์ภายในตารางขณะที่ใช้ Web API ของพอร์ทัลได้

ความปลอดภัยของ Web API ของพอร์ทัล

การรับรองความถูกต้องคำขอ Web API ของพอร์ทัล

คุณไม่จำเป็นต้องใส่รหัสการรับรองความถูกต้อง เนื่องจากการอนุญาตและการรับรองความถูกต้องได้รับการจัดการโดยเซสชันแอปพลิเคชัน การเรียกใช้ Web API ทั้งหมดต้องมีโทเค็นการปลอมแปลงคำขอข้ามไซต์ (CSRF)

การใช้ EntitySetName

เมื่ออ้างถึงตาราง Dataverse โดยใช้พอร์ทัล Web API ในรหัสของคุณ คุณต้องใช้ EntitySetName ตัวอย่างเช่น ในการเข้าถึงตาราง บัญชีผู้ใช้ ไวยากรณ์โค้ดจะใช้ EntitySetName ของ บัญชี; /_api/accounts()

หมายเหตุ

ใช้ตาราง ชื่อตรรกะ สำหรับ การตั้งค่าไซต์ (เช่น บัญชีผู้ใช้)

คุณสามารถกำหนด EntitySetName ของตารางเฉพาะโดยทำตามขั้นตอนเหล่านี้:

  1. ไปที่ https://make.powerapps.com

  2. เลือกแท็บ Dataverse จากแผงด้านข้างและเลือกตาราง

  3. เลือก ... (ตัวเลือกคำสั่ง) จากนั้นเลือก ขั้นสูง เครื่องมือ และ คัดลอกชื่อชุด เพื่อคัดลอก EntitySetName ของตารางไปยังคลิปบอร์ดของคุณ

    วิธีค้นหา EntitySetName ของตาราง Dataverse

ข้อบังคับในการป้องกันข้อมูลทั่วไป (GDPR)

ส่วนหัวของคำขอทั้งหมดจะมีการส่งรหัสผู้ติดต่อเพื่อการตรวจสอบ สำหรับผู้ใช้ที่ไม่ระบุชื่อ สิ่งนี้จะถูกส่งผ่านเป็น null

หากเปิดใช้งานการบันทึกการตรวจสอบ ผู้ใช้สามารถดูเหตุการณ์การตรวจสอบทั้งหมดใน บันทึกการตรวจสอบ Office 365

บันทึกการตรวจสอบ Office 365

ข้อมูลเพิ่มเติม:
เปิดใช้งาน และใช้การบันทึกกิจกรรม
ส่งออก, กำหนดค่า, และดูเรกคอร์ดบันทึกการตรวจสอบ

ตารางการกำหนดค่าที่ไม่รองรับ

Web API ของพอร์ทัลไม่สามารถใช้สำหรับตารางการกำหนดค่าต่อไปนี้:

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

ปัญหาที่ทราบกันดี

ผู้ใช้จะได้รับข้อผิดพลาด CDS หากเรียกใช้คำขอ GET Web API สำหรับตารางที่มีหลายระดับของ 1 ต่อกลุ่ม หรือ กลุ่มต่อกลุ่ม ที่เป็น สิทธิ์ของตาราง ที่มีการกำหนดขอบเขต หลัก

ในการแก้ไขปัญหานี้ วิธีแก้ไขที่แนะนำคือการใช้ FetchXML ในการสอบถาม OData

หรือกำหนดการตั้งค่าไซต์ Webapi/<table name>/disableodatafilter เป็น True

ข้อสำคัญ

การเปลี่ยนการตั้งค่าไซต์ Webapi/<table name>/disableodatafilter เป็น True อาจส่งผลให้ประสิทธิภาพการทำงานช้าลงสำหรับการเรียก Web API GET

การตั้งค่าไซต์มีอยู่ในพอร์ทัลเวอร์ชัน 9.4.10.74 หรือที่ใหม่กว่า

ขั้นตอนถัดไป

สืบค้นข้อมูลโดยใช้ Web API ของพอร์ทัล

ดูเพิ่มเติม

เขียนคำขอ HTTP และจัดการข้อผิดพลาด
พอร์ทัลเขียน, ปรับปรุง, และลบการดำเนินงานโดยใช้ Web API
บทช่วยสอน: ใช้ Web API ของพอร์ทัล

หมายเหตุ

บอกให้เราทราบเกี่ยวกับภาษาที่คุณต้องการในคู่มือ ทำแบบสำรวจสั้นๆ (โปรดทราบว่าแบบสำรวจนี้เป็นภาษาอังกฤษ)

แบบสำรวจนี้ใช้เวลาทำประมาณเจ็ดนาที ไม่มีการเก็บข้อมูลส่วนบุคคล (คำชี้แจงสิทธิ์ส่วนบุคคล)