คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X ข้อมูล
การเพิ่มความสามารถตามนโยบายให้กับพร็อกซี API มี 2 ขั้นตอนดังนี้
- กำหนดค่าอินสแตนซ์ของประเภทนโยบาย
- แนบอินสแตนซ์นโยบายกับโฟลว์
แผนภาพด้านล่างแสดงความสัมพันธ์ระหว่างนโยบายกับโฟลว์ จะเห็นได้ว่านโยบายแนบอยู่กับโฟลว์เป็น "ขั้นตอน" ของการประมวลผล หากต้องการกำหนดค่าลักษณะการทำงานที่ต้องการสำหรับ API คุณต้องเข้าใจเกี่ยวกับโฟลว์เล็กน้อย (หัวข้อนี้อธิบายไปก่อนหน้านี้ในการกำหนดค่าขั้นตอน)
นโยบายประเภทหนึ่งที่ใช้กันโดยทั่วไปคือ SpikeArrest SpikeArrest ป้องกันการเข้าชมข้อความที่เพิ่มขึ้นอย่างกะทันหันซึ่งอาจทำให้บริการแบ็กเอนด์ของคุณท่วมท้น
การแนบนโยบายกับขั้นตอน
วิธีแนบนโยบายกับโฟลว์
- เลือกพร็อกซี API และไปที่มุมมองพัฒนา
- ในเครื่องมือแก้ไขพร็อกซี API ให้เลือกโฟลว์ที่คุณต้องการแนบนโยบายในแผงการนำทาง
ตัวอย่างเช่น มีการเลือกขั้นตอน PreFlow สำหรับปลายทางพร็อกซี API เริ่มต้นในรูปต่อไปนี้
- ในมุมมองการออกแบบ ให้คลิก +ขั้นตอนที่เชื่อมโยงกับคำขอหรือขั้นตอนการตอบกลับเพื่อแนบนโยบาย ตัวอย่างเช่น
กล่องโต้ตอบ "เพิ่มขั้นตอน" จะเปิดขึ้นโดยแสดงรายการนโยบายที่จัดหมวดหมู่
- เลื่อนและเลือกประเภทนโยบายที่ต้องการแนบกับขั้นตอนที่เลือก
- แก้ไขช่องต่อไปนี้
-
ชื่อที่แสดง: ชื่อที่แสดงที่ไม่ซ้ำกันสำหรับนโยบาย UI จะสร้างชื่อเริ่มต้น แต่เราขอแนะนำให้สร้างชื่อที่สื่อความหมายสำหรับนโยบาย วิธีนี้จะช่วยให้นักพัฒนาซอฟต์แวร์รายอื่นในองค์กรเข้าใจวัตถุประสงค์ของนโยบายได้อย่างง่ายดาย
-
ชื่อ: ชื่อที่ไม่ซ้ำกันสำหรับนโยบาย ชื่อนโยบายตรงกับชื่อที่แสดงโดยมีข้อยกเว้นต่อไปนี้
-
การเว้นวรรคจะถูกแทนที่ด้วยเครื่องหมายขีดกลาง
-
เครื่องหมายขีดคั่นต่อเนื่องกันจะถูกแทนที่ด้วยเครื่องหมายขีดเดียว
-
ระบบจะนำอักขระที่ไม่ใช่ตัวอักษรและตัวเลขคละกัน เช่น เครื่องหมายสี่เหลี่ยม เครื่องหมายเปอร์เซ็นต์ เครื่องหมายและ และอื่นๆ ออก ยกเว้นขีดกลาง ขีดล่าง และเว้นวรรค (ซึ่งจะถูกแทนที่ตามที่ระบุไว้ข้างต้น)
-
-
- คลิกเพิ่ม
นโยบายนี้แนบไปกับขั้นตอนที่เลือก
หลังจากแนบนโยบายแล้ว คุณจะเห็นนโยบายสำหรับโฟลว์ในมุมมอง Designer ในตัวอย่างนี้คือ PreFlow ของปลายทางพร็อกซีเริ่มต้น และในรายการนโยบายในแผงการนำทาง มุมมองโค้ดที่แสดง XML สำหรับนโยบายที่แนบใหม่จะแสดงใต้มุมมอง Designer Edge จะสร้างอินสแตนซ์ของนโยบายที่มีชุดค่าเริ่มต้นที่สมเหตุสมผล
การเพิ่มนโยบายโดยไม่แนบไปกับขั้นตอน
หากต้องการเพิ่มนโยบายโดยไม่แนบไปกับโฟลว์ ซึ่งเป็นประโยชน์สำหรับการจัดการข้อผิดพลาด ให้คลิก + ในแถบนโยบายในมุมมองตัวนำทาง เพื่อเปิดกล่องโต้ตอบเพิ่มนโยบาย และเพิ่มนโยบาย (ตามที่อธิบายไว้ในขั้นตอนที่ 4 ถึง 6 ในส่วนก่อนหน้า)
นโยบายที่ไม่ได้แนบอยู่กับขั้นตอนใดๆ จะมีไอคอน "ปลดออกแล้ว" ในรายการนโยบาย ตามที่แสดงถัดจากนโยบายข้อความคีย์ API ที่แสดงในรูปก่อนหน้า
หลังจากสร้างนโยบายแล้ว คุณจะแนบไว้ในโฟลว์ได้โดยลากและวางนโยบายจากรายการนโยบายลงในโฟลว์ที่ต้องการในมุมมองนักออกแบบ
การปลดนโยบายออกจากขั้นตอน
หากต้องการปลดนโยบายออกจากโฟลว์ ให้เลือกโฟลว์ วางเมาส์เหนือไอคอนของนโยบายในมุมมองนักออกแบบของโฟลว์ คลิก X ในวงกลมที่ปรากฏในไอคอน
การลบอินสแตนซ์นโยบาย
หากต้องการลบอินสแตนซ์นโยบาย ให้วางเมาส์เหนือรายการนโยบายในมุมมอง Navigator คลิก X ในวงกลมที่ปรากฏทางด้านขวาของรายการ
การกำหนดค่านโยบายใน UI
เมื่อ UI สร้างอินสแตนซ์นโยบาย ระบบจะใช้ค่าเริ่มต้นที่สมเหตุสมผลสำหรับการตั้งค่าทั่วไป คุณอาจต้องแก้ไขการตั้งค่าเหล่านี้เพื่อให้เป็นไปตามข้อกำหนด
ตัวอย่างเช่น<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <SpikeArrest async="false" continueOnError="false" enabled="true" name="spikearrest-1"> <DisplayName>SpikeArrest-1</DisplayName> <FaultRules/> <Properties/> <Identifier ref="request.header.some-header-name"/> <MessageWeight ref="request.header.weight"/> <Rate>30ps</Rate> </SpikeArrest>
คุณกำหนดค่านโยบายได้โดยแก้ไขการกำหนดค่า XML ของนโยบายโดยตรงในมุมมองโค้ด เช่น อัตราข้อความสูงสุดสำหรับนโยบาย Spike Arrest เริ่มต้นตั้งไว้ที่ 30 ข้อความต่อวินาที คุณเปลี่ยนอัตราสูงสุดได้โดยเปลี่ยนค่าองค์ประกอบ <Rate
> ใน XML สำหรับนโยบาย ดูรายละเอียดเพิ่มเติมเกี่ยวกับการกำหนดค่านโยบายได้ที่ข้อมูลอ้างอิงนโยบาย
นอกจากนี้ คุณยังตัดและวางนโยบายในมุมมองโค้ดได้ด้วย ซึ่งเป็นวิธีที่ยอดเยี่ยมในการนำนโยบายจากตัวอย่างที่มีอยู่ใน GitHub มาใช้ซ้ำ
เมื่อคุณเปลี่ยนแปลงคำจำกัดความของนโยบายในมุมมองโค้ด การเปลี่ยนแปลงจะแสดงในเครื่องมือตรวจสอบพร็อพเพอร์ตี้ หรือในทางกลับกัน ให้ทำการเปลี่ยนแปลงใน Property Inspector และปรากฏใน XML ในมุมมองโค้ด
ดูเอกสารเกี่ยวกับนโยบายโควต้าที่ใช้ในหัวข้อนี้โดยเฉพาะได้ที่นโยบายโควต้า