คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X ข้อมูล
Apigee Edge ช่วยให้คุณ "ตั้งโปรแกรม" ลักษณะการทำงานของ API ได้โดยไม่ต้องเขียนโค้ดใดๆ โดยใช้ "นโยบาย" นโยบายเหมือนกับโมดูลที่นำฟังก์ชันการจัดการที่เฉพาะเจาะจงและจำกัด นโยบายออกแบบมาเพื่อให้คุณเพิ่มความสามารถในการจัดการประเภททั่วไปไปยัง API ได้อย่างง่ายดายและเชื่อถือได้ นโยบายต่างๆ มอบฟีเจอร์ต่างๆ เช่น ความปลอดภัย การจำกัดอัตรา การเปลี่ยนรูปแบบ และสื่อกลางเพื่อช่วยให้คุณไม่ต้องเขียนโค้ดและดูแลรักษาฟังก์ชันการทำงานนี้ด้วยตนเอง
คุณไม่ได้จํากัดเฉพาะชุดประเภทนโยบายที่ Apigee Edge เท่านั้น นอกจากนี้คุณยังเขียนสคริปต์และโค้ดที่กำหนดเอง (เช่น แอปพลิเคชัน JavaScript และ Node.js) ที่ขยายฟังก์ชันการทำงานของพร็อกซี API และพัฒนาความสามารถด้านการจัดการขั้นพื้นฐานที่นโยบาย Apigee รองรับได้อีกด้วย
ดูวิดีโอนี้สำหรับข้อมูลเบื้องต้นเกี่ยวกับไฟล์แนบและการบังคับใช้นโยบาย
ประเภทนโยบาย
ในทางเทคนิค นโยบายคือไฟล์การกำหนดค่าในรูปแบบ XML โครงสร้างของนโยบายแต่ละประเภท (เช่น องค์ประกอบการกำหนดค่าที่จำเป็นและไม่บังคับ) จะกำหนดโดยสคีมา XML หากคุณคุ้นเคยกับเครื่องมือ XML เป็นอย่างดี เราขอแนะนำให้คุณทำความคุ้นเคยกับสคีมานโยบายในตัวอย่างแพลตฟอร์ม API บน GitHub
ประเภทนโยบาย Edge จะจัดอยู่ในหมวดหมู่ฟังก์ชันดังต่อไปนี้
การจัดการปริมาณการเข้ารวบรวมข้อมูล
นโยบายในหมวดหมู่การจัดการการรับส่งข้อมูลช่วยให้คุณควบคุมโฟลว์ข้อความคำขอและข้อความตอบกลับผ่านพร็อกซี API ได้ นโยบายเหล่านี้รองรับการควบคุมทั้งในระดับปฏิบัติการและระดับธุรกิจ ซึ่งจะช่วยให้คุณควบคุมอัตราการส่งข้อมูลดิบและควบคุมการเข้าชมแบบรายแอปได้ด้วย ประเภทนโยบายการจัดการการรับส่งข้อมูลช่วยให้คุณบังคับใช้โควต้า และช่วยลดการโจมตีแบบปฏิเสธการให้บริการด้วย
ความปลอดภัย
นโยบายในหมวดหมู่ความปลอดภัยรองรับการตรวจสอบสิทธิ์ การให้สิทธิ์ และความปลอดภัยตามเนื้อหา
บริการไกล่เกลี่ย
นโยบายในหมวดหมู่สื่อกลางช่วยให้คุณปรับเปลี่ยนข้อความในขณะที่ส่งผ่านพร็อกซี API ได้ ซึ่งช่วยให้คุณเปลี่ยนรูปแบบข้อความจาก XML เป็น JSON (หรือกลับกัน) หรือเปลี่ยนรูปแบบ XML หนึ่งเป็น XML อีกรูปแบบหนึ่งได้ นอกจากนี้ยังช่วยให้คุณแยกวิเคราะห์ข้อความ สร้างข้อความใหม่ และเปลี่ยนค่าของข้อความขาออกได้ นโยบายสื่อกลางจะโต้ตอบกับบริการพื้นฐานที่แสดงโดยบริการ API ด้วย ซึ่งช่วยให้คุณเรียกดูข้อมูลเกี่ยวกับแอป นักพัฒนาซอฟต์แวร์ โทเค็นการรักษาความปลอดภัย และผลิตภัณฑ์ API ได้ขณะรันไทม์
ส่วนขยาย
นโยบายในหมวดหมู่ส่วนขยายช่วยให้คุณเข้าถึงการขยายของบริการ API เพื่อนำลักษณะการทำงานที่กำหนดเองในภาษาโปรแกรมที่ต้องการได้
และจะบันทึกนโยบายแต่ละประเภทไว้อย่างละเอียดในภาพรวมข้อมูลอ้างอิงนโยบาย หัวข้อนี้จะสาธิตการโต้ตอบทั่วไป โดยแสดงวิธีสร้างนโยบาย และวิธีแนบนโยบายดังกล่าวกับโฟลว์ในการกำหนดค่าพร็อกซี API
การนำการเปลี่ยนแปลงนโยบายไปใช้
คุณต้องทำให้การแก้ไขพร็อกซี API ใช้งานได้กับสภาพแวดล้อม เพื่อให้การเปลี่ยนแปลงนโยบายมีผล หลังจากแนบนโยบายหรือเปลี่ยนแปลงนโยบายที่มีอยู่แล้ว ให้ใช้ UI การจัดการหรือ Management API เพื่อทำให้การเปลี่ยนแปลงใช้งานได้
การยืนยันการบังคับใช้นโยบาย
ไคลเอ็นต์ HTTP จะต้องเรียกใช้ API เพื่อยืนยันว่ามีการบังคับใช้นโยบายอย่างถูกต้อง หากต้องการยืนยันการกำหนดค่าโควต้านี้ ให้ส่งคำขอหลายรายการไปยัง API โดยเกินขีดจำกัดโควต้าที่กำหนดไว้ในนโยบายโควต้า (เส้นทาง URI ที่กำหนดค่าไว้เป็นการตั้งค่าเส้นทางฐานใน ProxyEndpoint ในคำขอด้านล่างคือ /weather
)
http://{org_name}-test.apigee.net/weather/forecastrss?w=12797282
หลังจากส่งคำขอมากกว่า 1 รายการภายใน 1 นาที คุณจะเห็นข้อความแสดงข้อผิดพลาดต่อไปนี้
{ "fault":{ "faultstring":"policies.ratelimit.QuotaViolation", "detail":{ "errorcode":"policies.ratelimit.QuotaViolation" } } }
บ่งบอกว่ามีการบังคับใช้นโยบายโควต้าโดยบริการ API
การจัดการความผิดพลาดตามนโยบาย
โปรดสังเกตรูปแบบข้อความแสดงข้อผิดพลาดข้างต้น ซึ่งประกอบด้วยพร็อพเพอร์ตี้ faultstring
และพร็อพเพอร์ตี้ errorcode
ในหลายๆ กรณี คุณจะต้องใช้ลักษณะการทำงานบางอย่างเพื่อจัดการกับข้อผิดพลาดเหล่านี้ เช่น คุณอาจต้องการส่งข้อความที่กำหนดเองไปยังนักพัฒนาแอปซึ่งมีแอปเกินโควต้าแล้ว
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการข้อผิดพลาดได้ที่การจัดการข้อผิดพลาด
แนวทางปฏิบัติแนะนำ: ชุดนโยบายทั่วไป
โดยทั่วไปแล้วพร็อกซี API จะบังคับใช้นโยบายต่อไปนี้เพื่อให้เป็นไปตามข้อกำหนดการจัดการขั้นพื้นฐาน
การตรวจสอบคีย์ API พื้นฐาน
ขั้นตอนการส่งคำขอ ProxyEndpoint- SpikeArrest
- XMLThreatProtection หรือ JSONThreatProtection
- การตรวจสอบคีย์ API
- โควต้า
- ResponseCache
- ResponseCache
การแปลงพื้นฐาน: JSON เป็น XML
ขั้นตอนการส่งคำขอ:- SpikeArrest
- JSONThreatProtection
- การตรวจสอบคีย์ API
- โควต้า
- JSONToXML
- XMLToJSON
- ResponseCache