คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X ข้อมูล
เมื่อเปลี่ยนปลายทางเป้าหมายแล้ว คุณก็พร้อมที่จะเพิ่มนโยบายไปยังพร็อกซี
นโยบายคือคอมโพเนนต์ Edge ที่คุณแนบไว้กับจุดต่างๆ ในการส่งข้อความผ่านพร็อกซี API ได้ นโยบายอาจเปลี่ยนรูปแบบข้อความ บังคับใช้การควบคุมการเข้าถึง เรียกใช้บริการระยะไกล ให้สิทธิ์ผู้ใช้ ตรวจสอบเนื้อหาข้อความเพื่อดูภัยคุกคามที่อาจเกิดขึ้น และอื่นๆ อีกมากมาย
ในบทแนะนำนี้ คุณจะเพิ่มนโยบาย XMLtoJSON ในพร็อกซี นโยบายนี้แปลงเพย์โหลดของข้อความ XML เป็น JSON และยังเปลี่ยนส่วนหัว Content-Type
ของการตอบกลับด้วย
วิธีเพิ่มนโยบาย XML ไปยัง JSON ในพร็อกซี
- เปิด Edge UI ในเบราว์เซอร์และเข้าสู่ระบบ
- คลิกพร็อกซี API ในหน้าต่างหลัก แล้วเลือกพร็อกซี สำหรับตัวอย่างนี้ ให้เลือกพร็อกซีที่คุณสร้างในขั้นตอนที่ 1: สร้างพร็อกซี API
คลิกแท็บพัฒนา
Edge จะแสดงเครื่องมือแก้ไขพร็อกซี API
ในแผง Navigator ให้คลิก Proxy Endpoints > default > PreFlow ดังนี้
Edge จะแสดงเครื่องมือแก้ไขโฟลว์ดังนี้
นอกจากนี้ Edge จะแสดงการกำหนดค่าปลายทางพร็อกซีเริ่มต้นในแผงโค้ด ดังนี้
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ProxyEndpoint name="default"> <Description/> <FaultRules/> <PreFlow name="PreFlow"> <Request/> <Response/> </PreFlow> <PostFlow name="PostFlow"> <Request/> <Response/> </PostFlow> <Flows/> <HTTPProxyConnection> <BasePath>/getstarted</BasePath> <Properties/> <VirtualHost>default</VirtualHost> <VirtualHost>secure</VirtualHost> </HTTPProxyConnection> <RouteRule name="default"> <TargetEndpoint>default</TargetEndpoint> </RouteRule> </ProxyEndpoint>
- หากต้องการเพิ่มนโยบายลงในพร็อกซี ให้คลิกปุ่ม + ขั้นตอนในการตอบสนอง PreFlow (ครึ่งล่างของเครื่องมือแก้ไขโฟลว์)
Edge จะแสดงรายการนโยบายที่จัดหมวดหมู่ในกล่องโต้ตอบเพิ่มที่คุณเพิ่มลงในโฟลว์ได้ ดังนี้
- เลื่อนลงและเลือกนโยบาย XML เป็น JSON ในหมวดหมู่สื่อกลาง
ปล่อยชื่อเริ่มต้นไว้ แล้วคลิกเพิ่ม
Edge แนบนโยบายใหม่กับ PreFlow ของคำตอบ ดังนี้
โปรดทราบว่าเมื่อคุณคลิกเพิ่ม Edge จะดำเนินการดังต่อไปนี้
- เพิ่มนโยบายใหม่ในส่วน Policies ในแผง Navigator
- เพิ่มนโยบาย XML ไปยัง JSON ในแผงโฟลว์
- แสดง XML การกำหนดค่าของนโยบายในแผงโค้ด
- คลิกบันทึกเพื่อบันทึกเวอร์ชันปัจจุบันที่มีการเปลี่ยนแปลง
ลองใช้เลย! ในหน้าต่างเทอร์มินัล ให้เรียกใช้คำสั่ง curl
ต่อไปนี้
curl https://org_name-test.apigee.net/getstarted
โดยที่
- org_name คือชื่อองค์กรที่ Apigee ให้กับคุณเมื่อคุณสร้างบัญชี Apigee
-test
คือสภาพแวดล้อม คุณทำให้พร็อกซีใหม่ใช้งานได้ในสภาพแวดล้อม "ทดสอบ" ในขั้นตอนที่ 1: สร้างพร็อกซี API/getstarted
คือเส้นทางฐานพร็อกซี
หรือจะเปิด URL เดียวกันในเบราว์เซอร์ก็ได้
คุณควรได้รับการตอบกลับต่อไปนี้:
{ "root": { "city": "San Jose", "firstName": "John", "lastName": "Doe", "state": "CA" } }
หากส่วนเนื้อหาของการตอบสนองไม่มีลักษณะเช่นนี้ ให้ตรวจสอบดังนี้:
- ปลายทางเป้าหมายคือ "https://mocktarget.apigee.net/xml" ตามที่อธิบายไว้ในขั้นตอนที่ 3: เปลี่ยนปลายทางเป้าหมาย
- หากได้รับ "สวัสดี ผู้มาเยือน!" เป็นการตอบกลับ คุณจะต้องเพิ่ม "/xml" ต่อท้ายปลายทางปลายทาง
- หากคุณได้รับ 404 ให้ตรวจสอบว่าคุณเข้าถึง "apigee.net" ไม่ใช่ "apigee.com"
- ใช้งานพร็อกซีเวอร์ชันล่าสุดแล้ว ลองทำให้พร็อกซี API ใช้งานได้อีกครั้งตามที่อธิบายไว้ในการทำให้พร็อกซี API ใช้งานได้และยกเลิกการทำให้พร็อกซี API ใช้งานได้
หากต้องการดูคำขอ HTTP และส่วนหัวการตอบกลับ ให้เปิดใช้การพูดรายละเอียดใน curl
ด้วยตัวเลือก -vs
(v
ทำให้การตอบกลับเป็นรายละเอียด แต่ s
ระงับรายละเอียดบางอย่างที่น่าสนใจน้อยกว่า) เช่น
curl -vs https://ahamilton-eval-test.apigee.net/getstarted | python -m json.tool
คุณควรได้รับการตอบกลับที่มีลักษณะดังต่อไปนี้ โปรดทราบว่าส่วนหัว Content-Type
ในการตอบกลับคือ "application/json" นโยบาย XML เป็น JSON จะเปลี่ยนส่วนหัวก่อนส่งการตอบกลับกลับมา
* Trying 10.20.30.40... * TCP_NODELAY set * Connected to ahamilton-eval-test.apigee.net (10.20.30.40) port 443 (#0) ... > GET /getstarted HTTP/1.1 > Host: ahamilton-eval-test.apigee.net > User-Agent: curl/7.58.0 > Accept: */* > < HTTP/1.1 200 OK < Date: Fri, 25 May 2018 16:20:00 GMT < Content-Type: application/json;charset=UTF-8 < Content-Length: 77 < Connection: keep-alive < X-Powered-By: Apigee < Access-Control-Allow-Origin: * ... { [77 bytes data] { "root": { "city": "San Jose", "firstName": "John", "lastName": "Doe", "state": "CA" } }