หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
เมื่อคุณสร้างแอปพลิเคชันหรือผสานรวมเครื่องมือภายนอกกับ Fabric API สําหรับ GraphQL คุณต้องเข้าใจโครงสร้างของ API ของคุณ—ประเภทที่พร้อมใช้งาน ฟิลด์ใดบ้าง และความสัมพันธ์กันอย่างไร ไม่ว่าคุณจะสร้างโค้ดไคลเอ็นต์ สร้างเอกสารประกอบ หรือกําหนดค่าเครื่องมือการจัดการ API การเข้าถึงข้อกําหนดสคีมาของคุณเป็นสิ่งสําคัญ
Fabric API สําหรับ GraphQL มีกลไกเสริมสองกลไกในการดึงข้อมูล Schema: การวิปัสสนา สําหรับการสืบค้นรันไทม์แบบเป็นโปรแกรมและการ ส่งออก Schema เพื่อรับไฟล์ Schema ที่สมบูรณ์ ทั้งสองวิธีให้คุณเข้าถึง Schema พื้นฐานเดียวกัน แต่แต่ละวิธีให้บริการเวิร์กโฟลว์และกรณีการใช้งานที่แตกต่างกัน
เคล็ดลับ
ต้องการดูการวิปัสสนาในการดําเนินการหรือไม่? ลองใช้บทช่วยสอน เชื่อมต่อ AI Agents กับ Fabric API สําหรับ GraphQL ด้วยเซิร์ฟเวอร์ Model Context Protocol (MCP) ในเครื่อง คู่มือภาคปฏิบัตินี้แสดงให้เห็นว่าตัวแทน AI ใช้การวิปัสสนาเพื่อค้นหาและสืบค้นข้อมูล Fabric ของคุณโดยอัตโนมัติโดยใช้ภาษาธรรมชาติอย่างไร
ใครใช้การวิปัสสนาและการส่งออกสคีมา
การวิปัสสนาและการส่งออกสคีมามีค่าสําหรับ:
- นักพัฒนาแอปพลิเคชันที่ สร้างไคลเอ็นต์ที่ใช้ข้อมูล Fabric และจําเป็นต้องสร้างโค้ดที่ปลอดภัยสําหรับประเภท
- ผู้สนับสนุนพื้นที่ทํางาน Fabric ที่เข้าใจโครงสร้างข้อมูลที่มีอยู่และทดสอบการเข้าถึงข้อมูล
- เครื่องมือพัฒนาและ IDE ที่ให้การเติมข้อความอัตโนมัติและ IntelliSense สําหรับ Fabric GraphQL API
- การรวม Azure API Management ที่กําหนดเส้นทางและรักษาความปลอดภัยการรับส่งข้อมูล Fabric GraphQL ในระดับองค์กร
- ผู้ดูแลระบบ Fabric ตรวจสอบโครงสร้างข้อมูลที่เปิดเผยและตรวจสอบการควบคุมการเข้าถึง
- ตัวแทนและผู้ช่วย AI โดยใช้ Model Context Protocol (MCP) เพื่อค้นหาและสืบค้นข้อมูล Fabric อย่างเป็นธรรมชาติ
- นักพัฒนา Power Platform ทําความเข้าใจ Schema ข้อมูล Fabric ก่อนสร้างการรวม
- ไปป์ไลน์ CI/CD ติดตามเวอร์ชันสคีมา Fabric GraphQL และตรวจสอบความเข้ากันได้ในสภาพแวดล้อมต่างๆ
เลือกการวิปัสสนา เมื่อคุณต้องการสืบค้นข้อมูล Schema โดยทางโปรแกรมในขณะรันไทม์ เช่น การขับเคลื่อนเครื่องมือการพัฒนา การเปิดใช้งานตัวแทน AI หรือการใช้คุณลักษณะไคลเอ็นต์แบบไดนามิก เลือกการส่งออก Schema เมื่อคุณต้องการไฟล์ Schema ที่สมบูรณ์สําหรับการใช้งานแบบออฟไลน์ การควบคุมเวอร์ชัน การรวมเกตเวย์ API หรือการแชร์กับทีมภายนอก
วิปัสสนา: สืบค้นสคีมาของคุณโดยทางโปรแกรมโดยใช้ระบบวิปัสสนา GraphQL ซึ่งเป็นส่วนหนึ่งของมาตรฐาน GraphQL การสืบค้นวิปัสสนาช่วยให้คุณค้นพบประเภท ฟิลด์ และความสัมพันธ์แบบไดนามิก และขับเคลื่อนเครื่องมือการพัฒนา GraphQL จํานวนมาก
การส่งออกสคีมา: ดาวน์โหลดไฟล์ SDL (GraphQL Schema Definition Language) ที่สมบูรณ์ซึ่งมีคําจํากัดความสคีมาทั้งหมดสําหรับการใช้งานแบบออฟไลน์ การแชร์ หรือการรวมเครื่องมือ
วิปัสสนา
ตามค่าเริ่มต้น การแนะนําจะถูกปิดใช้งานบน API ของคุณสําหรับรายการ GraphQL การตั้งค่านี้สามารถสลับได้โดยผู้ดูแลระบบพื้นที่ทํางานเท่านั้น ผู้ใช้อื่น ๆ ทั้งหมดจะเห็นแถบเลื่อนที่ถูกปิดใช้งาน
วิธีเปิดใช้งานการวิปัสนา:
เลือกไอคอนรูปเฟือง การตั้งค่า API ในเมนูด้านบน
จากการนําทางด้านซ้าย ให้เลือกหน้า วิปัสนา
เลือกปุ่มสลับเพื่อเปิดใช้งานการวิปัสสนา การเปิดใช้งานการวิปัสสนาจะแสดงข้อมูล Schema แก่ผู้ใช้ทุกคนที่มีสิทธิ์เข้าถึงตําแหน่งข้อมูล API
กล่องโต้ตอบการยืนยันจะปรากฏขึ้น เลือก ยืนยัน เพื่อเปิดใช้งานการวิปัสนา หรือ ยกเลิก เพื่อปิดใช้งาน
ตัวอย่างคิวรีการแนะนํา
นี่คือตัวอย่างด่วนของคิวรี่เบื้องต้นเพื่อดึงข้อมูลชนิดที่พร้อมใช้งานจากสคีมา:
สร้างคิวรีใหม่ในตัวแก้ไข GraphQL เลือกไอคอนเครื่องหมายบวก
+ถัดจากแท็บที่มีอยู่เพื่อเปิดแท็บคิวรีใหม่ป้อนแบบสอบถามการวิปัสนาต่อไปนี้ในตัวแก้ไข:
query { __schema { types{ name } } }เลือกปุ่ม เรียกใช้ เพื่อดําเนินการแบบสอบถาม
บานหน้าต่างผลลัพธ์จะแสดงรายการของชนิดทั้งหมดที่กําหนดไว้ใน Schema
แบบสอบถามวิปัสนาสามารถส่งคืนข้อมูลจํานวนมากได้ คุณสามารถจํากัดขอบเขตของสิ่งที่คุณสืบค้นให้แคบลงได้โดยการระบุเฉพาะเจาะจงมากขึ้นในคําขอวิปัสสนาของคุณ ตัวอย่างเช่น แทนที่จะสืบค้นทุกชนิด คุณสามารถสืบค้นชนิดที่เฉพาะเจาะจงได้ดังนี้
query {
__type(name: "ProductCategory") {
name
kind
fields {
name
type {
name
}
}
}
}
การเรียกใช้แบบสอบถามจะส่งกลับข้อมูลโดยละเอียดเกี่ยวกับชนิด:ProductCategory
{
"data": {
"__type": {
"name": "ProductCategory",
"kind": "OBJECT",
"fields": [
{
"name": "ProductCategoryID",
"type": {
"name": null
}
},
{
"name": "ParentProductCategoryID",
"type": {
"name": "Int"
}
},
{
"name": "Name",
"type": {
"name": "String"
}
},
{
"name": "rowguid",
"type": {
"name": null
}
},
{
"name": "ModifiedDate",
"type": {
"name": null
}
}
]
}
}
}
รูปแบบการกรองทั่วไปเมื่อประมวลผลผลลัพธ์การวิปัสสนา ได้แก่:
- ไม่รวมประเภทที่ขึ้นต้นด้วยขีดล่างคู่ (
__) ซึ่งเป็นชนิดของระบบ GraphQL - รวมถึงประเภทที่ขึ้นต้นด้วยคํานําหน้าเฉพาะ เช่น
ProductCategory
ตัวอย่างเหล่านี้แสดงให้เห็นถึงไวยากรณ์การวิปัสสนา GraphQL มาตรฐานที่ใช้ได้กับการใช้งาน GraphQL ภาพรวมนี้ครอบคลุมรูปแบบการวิปัสสนาพื้นฐาน สําหรับรายละเอียดที่ครอบคลุมเกี่ยวกับระบบวิปัสนา เทคนิคการสืบค้นขั้นสูง และความสามารถเพิ่มเติม โปรดดูเอกสารอย่างเป็นทางการของมูลนิธิ GraphQL เกี่ยวกับการวิปัสสนา
ส่งออกเค้าร่าง
เมื่อคุณต้องการสําเนาข้อกําหนด Schema แบบออฟไลน์ที่สมบูรณ์ ให้ใช้คุณลักษณะการส่งออก Schema โดยตรงจากพอร์ทัล Fabric เปิด API สําหรับ GraphQL แล้วเลือก ส่งออกสคีมา จากแถบเครื่องมือ เบราว์เซอร์ของคุณดาวน์โหลดไฟล์ SDL (Schema Definition Language) ที่มีคําจํากัดความสคีมาที่สมบูรณ์ของคุณ
ทําความเข้าใจไฟล์ SDL
ไฟล์ที่ส่งออกจะใช้ Schema Definition Language (SDL) ของ GraphQL ซึ่งเป็นรูปแบบที่มนุษย์อ่านได้ซึ่งกําหนดประเภท ฟิลด์ และความสัมพันธ์ของ API ของคุณ ไฟล์ SDL ประกอบด้วย:
- ชนิดออบเจ็กต์ ที่แสดงเอนทิตีข้อมูลของคุณพร้อมฟิลด์
- การดําเนินการคิวรี ที่กําหนดวิธีการดึงข้อมูล
- การดําเนินการกลายพันธุ์ สําหรับการสร้าง อัปเดต หรือลบข้อมูล
- อาร์กิวเมนต์ฟิลด์ที่ระบุพารามิเตอร์อินพุตและชนิดของพารามิเตอร์
- คําอธิบายประเภท ที่ให้เอกสารประกอบสําหรับแต่ละองค์ประกอบ
คุณเปิดไฟล์ SDL ในโปรแกรมแก้ไขข้อความใดก็ได้เพื่อตรวจสอบโครงสร้างสคีมา สิ่งนี้มีประโยชน์อย่างยิ่งสําหรับการทําความเข้าใจพื้นผิว API ทั้งหมดก่อนที่จะรวมเข้ากับแอปพลิเคชันของคุณ
การใช้ Schema ที่ส่งออก
กรณีการใช้งานทั่วไปสําหรับไฟล์ SDL ที่ส่งออก ได้แก่:
- การรวมเกตเวย์ API: นําเข้าไปยัง Azure API Management เพื่อเพิ่มการรับรองความถูกต้อง การจํากัดอัตรา และการแคช
- การตั้งค่าสภาพแวดล้อมการพัฒนา: กําหนดค่า IntelliSense ใน Visual Studio Code สําหรับการเติมข้อความอัตโนมัติและการตรวจสอบความถูกต้อง
- การควบคุมเวอร์ชัน: ผูกมัดกับ Git หรือระบบควบคุมแหล่งที่มาอื่นๆ เพื่อติดตามวิวัฒนาการของสคีมาเมื่อเวลาผ่านไป
- การทํางานร่วมกันเป็นทีม: แชร์กับพาร์ทเนอร์ภายนอกหรือทีมพัฒนาที่ต้องการทําความเข้าใจโครงสร้าง API ของคุณ
- การสร้างโค้ด: ใช้กับตัวสร้างโค้ด GraphQL เพื่อสร้างไคลเอ็นต์ที่ปลอดภัยในประเภท TypeScript, C#, Java หรือภาษาอื่นๆ
- เอกสารประกอบ: สร้างเอกสารอ้างอิง API โดยใช้เครื่องมือต่างๆ เช่น GraphQL Voyager หรือ GraphQL Markdown
การส่งออกสคีมาไม่จําเป็นต้องเปิดใช้งานการวิปัสสนาซึ่งแตกต่างจากการสืบค้นวิปัสสนาและทํางานโดยไม่คํานึงถึงการตั้งค่าการวิปัสสนาของ API ของคุณ ทําให้เป็นวิธีที่เชื่อถือได้ในการเข้าถึงข้อกําหนด Schema ของคุณเพื่อวัตถุประสงค์ในการบริหารและการพัฒนา
การจัดการการเปลี่ยนแปลง Schema
สคีมา GraphQL สามารถพัฒนาได้เมื่อเวลาผ่านไปเมื่อคุณเพิ่มประเภท ฟิลด์ หรือความสามารถใหม่ๆ ลงใน API ของคุณ เมื่อสคีมาเปลี่ยนไป ไฟล์ SDL ที่ส่งออกจะล้าสมัย พิจารณาแนวทางปฏิบัติเหล่านี้:
- ส่งออกอีกครั้งหลังจากการเปลี่ยนแปลง: ดาวน์โหลดไฟล์ SDL ใหม่ทุกครั้งที่คุณแก้ไขสคีมา API ใน Fabric การเปลี่ยนแปลง Schema รวมถึงการเพิ่มแหล่งข้อมูล การแก้ไขชนิดที่เปิดเผย หรือการอัปเดตข้อกําหนดฟิลด์
- การควบคุมเวอร์ชัน: คอมมิตสคีมาที่ส่งออกแต่ละรายการไปยังระบบควบคุมแหล่งที่มาของคุณด้วยข้อความการยอมรับที่สื่อความหมาย สิ่งนี้จะสร้างเส้นทางการตรวจสอบของวิวัฒนาการ Schema และเปิดใช้งานการย้อนกลับหากจําเป็น
- การสื่อสาร: หากทีมหรือแอปพลิเคชันภายนอกขึ้นอยู่กับสคีมาของคุณ ให้แจ้งให้พวกเขาทราบถึงการเปลี่ยนแปลงที่สําคัญ แม้ว่า GraphQL จะรองรับการเปลี่ยนแปลงเพิ่มเติมโดยไม่ทําลายการสืบค้นที่มีอยู่ แต่การลบหรือเปลี่ยนชื่อฟิลด์อาจส่งผลกระทบต่อไคลเอ็นต์
- ระบบอัตโนมัติ: สําหรับไปป์ไลน์ CI/CD ให้พิจารณาการส่งออกสคีมาโดยอัตโนมัติซึ่งเป็นส่วนหนึ่งของกระบวนการปรับใช้เพื่อให้แน่ใจว่าเอกสารและเครื่องมือจะซิงโครไนซ์กับ API ของคุณ
บุคคลที่รับผิดชอบในการแก้ไข Schema API (โดยทั่วไปคือวิศวกรข้อมูลหรือนักพัฒนา API) ควรส่งออกและกําหนดเวอร์ชัน Schema ที่อัปเดตเพื่อรักษาความสอดคล้องระหว่าง Fabric API และระบบภายนอกที่ขึ้นอยู่กับ