คุณกำลังดูเอกสารประกอบ Apigee Edge
ไปที่
เอกสารประกอบเกี่ยวกับ Apigee X. ข้อมูล
ทุกองค์กรมีวงจรการพัฒนาซอฟต์แวร์ (SDLC) ที่ไม่ซ้ำกัน มักมีความจำเป็น เพื่อซิงค์และปรับการติดตั้งใช้งานพร็อกซี API กับกระบวนการที่ใช้สำหรับบริการแบ็กเอนด์
เมธอด Edge API ที่แสดงในหัวข้อนี้สามารถใช้เพื่อผสานรวมพร็อกซี API ลงใน SDLC ขององค์กรคุณ การใช้งานทั่วไปของ API นี้คือการเขียนสคริปต์หรือโค้ด ที่ทำให้พร็อกซี API ใช้งานได้ หรือย้ายข้อมูลพร็อกซี API จากสภาพแวดล้อมหนึ่งไปยังอีกสภาพแวดล้อมหนึ่ง โดยเป็นส่วนหนึ่งของ กระบวนการอัตโนมัติที่มีขนาดใหญ่ขึ้น และยังปรับใช้หรือย้ายแอปพลิเคชันอื่นๆ ด้วย
Edge API ไม่ได้ตั้งสมมติฐานเกี่ยวกับ SDLC ของคุณ (หรือของบุคคลอื่นไม่ว่าในกรณีนั้น) แต่เป็นการนำเสนอฟังก์ชันระดับอะตอมซึ่งทีมพัฒนาของคุณประสานงานกันเพื่อทำให้เป็นระบบอัตโนมัติได้ และเพิ่มประสิทธิภาพวงจรการพัฒนา API ของคุณ
ดูข้อมูลทั้งหมดได้ที่ Edge API
หากต้องการใช้ Edge API คุณต้องตรวจสอบสิทธิ์ด้วยตนเองในการโทร คุณสามารถทำสิ่งนี้ได้ด้วย วิธีใดวิธีหนึ่งต่อไปนี้
- OAuth2 (ระบบคลาวด์สาธารณะเท่านั้น)
- SAML (สาธารณะและ Private Cloud)
- การตรวจสอบสิทธิ์พื้นฐาน (ไม่แนะนำ ระบบคลาวด์สาธารณะและ Private Cloud)
หัวข้อนี้เน้นที่ชุด API ที่สำหรับจัดการพร็อกซี API
วิดีโอ: ดูวิดีโอสั้นๆ นี้เพื่อเรียนรู้วิธีทำให้ API ใช้งานได้
การโต้ตอบกับ API
ขั้นตอนต่อไปนี้จะแนะนำคุณเกี่ยวกับการโต้ตอบง่ายๆ กับ API
แสดงรายการ API ในองค์กร
คุณเริ่มต้นด้วยการแสดงพร็อกซี API ทั้งหมดในองค์กรได้ (อย่าลืมเปลี่ยน รายการสำหรับ EMAIL:PASSWORD และ ORG_NAME โปรดดูวิธีการที่หัวข้อ ใช้ Edge API
curl -u EMAIL:PASSWORD \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/apis
คำตอบตัวอย่าง:
[ "weatherapi" ]
รับ API
คุณสามารถเรียกใช้เมธอด GET
ในพร็อกซี API ใดก็ได้ในองค์กร การเรียกนี้จะแสดงรายการ
การแก้ไขพร็อกซี API ที่มีทั้งหมด
curl -u EMAIL:PASSWORD -H "Accept: application/json" \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/apis/weatherapi
คำตอบตัวอย่าง:
{ "name" : "weatherapi", "revision" : [ "1" ] }
รายละเอียดเดียวที่แสดงผลโดยเมธอดนี้คือชื่อของพร็อกซี API พร้อมด้วย การแก้ไข ซึ่งมีหมายเลขที่เชื่อมโยงกัน พร็อกซี API ประกอบด้วยชุดการกำหนดค่า การแก้ไขมีกลไกขนาดเล็กสำหรับจัดการการอัปเดตการกำหนดค่า ในขณะที่คุณทำซ้ำ การแก้ไขจะมีหมายเลขกำกับตามลำดับ ซึ่งช่วยให้คุณเปลี่ยนกลับการเปลี่ยนแปลงได้ด้วยการทำให้ใช้งานได้ พร็อกซี API เวอร์ชันก่อนหน้า นอกจากนี้ คุณยังทำให้การแก้ไขพร็อกซี API ใช้งานได้ใน สภาพแวดล้อมการใช้งาน ขณะสร้างการแก้ไขใหม่ของพร็อกซี API นั้นในการทดสอบต่อไป ของคุณ เมื่อพร้อมแล้ว คุณสามารถโปรโมตการแก้ไขพร็อกซี API ที่สูงขึ้นจาก สภาพแวดล้อมการทดสอบในการแก้ไขพร็อกซี API ก่อนหน้านี้ในสภาพแวดล้อมการใช้งาน
ในตัวอย่างนี้ มีการแก้ไขเพียงรายการเดียว เนื่องจากเพิ่งสร้างพร็อกซี API เป็น API พร็อกซีจะย้ายตามวงจรของการกำหนดค่าและการทำให้ใช้งานได้ซ้ำ ตลอดจนหมายเลขการแก้ไข ที่เพิ่มขึ้นตามจำนวนเต็ม ในการใช้การเรียก API โดยตรงเพื่อทำให้ใช้งานได้ คุณสามารถเพิ่ม หมายเลขการแก้ไขของพร็อกซี API ในบางครั้งเมื่อคุณทำการเปลี่ยนแปลงเล็กน้อย คุณอาจไม่ต้องการ เพิ่มการแก้ไข
รับการแก้ไข API
เวอร์ชัน API (เช่น api.company.com/v1
) ควรเปลี่ยนแปลงอย่างมาก
ไม่บ่อยนัก เมื่อคุณเพิ่มเวอร์ชัน API จะเป็นการแสดงให้นักพัฒนาซอฟต์แวร์ทราบว่ามี
เป็นการเปลี่ยนแปลงที่สำคัญในลายเซ็นของอินเทอร์เฟซภายนอกที่เปิดเผยโดย API
การแก้ไขพร็อกซี API คือตัวเลขที่เพิ่มขึ้นซึ่งเชื่อมโยงกับพร็อกซี API
การกำหนดค่า บริการ API จะเก็บรักษาการแก้ไขการกำหนดค่าของคุณ เพื่อให้คุณสามารถเปลี่ยนกลับ
การกำหนดค่าเมื่อเกิดข้อผิดพลาด โดยค่าเริ่มต้น การแก้ไขของพร็อกซี API จะเป็น
ซึ่งจะเพิ่มขึ้นทุกครั้งที่คุณนำเข้าพร็อกซี API โดยใช้ API นำเข้าพร็อกซี API หากคุณ
ไม่ต้องการเพิ่มการแก้ไขของพร็อกซี API ให้ใช้พารามิเตอร์ การอัปเดต
API การแก้ไขพร็อกซี API หากคุณกำลังใช้ Maven เพื่อทำให้ใช้งานได้ ให้ใช้ clean
หรือ
update
ตัวเลือก ตามที่อธิบายไว้ในปลั๊กอิน Maven
Readme
ตัวอย่างเช่น คุณสามารถเรียกใช้เมธอด GET
ในพร็อกซี API การแก้ไข 1 เพื่อดูมุมมองรายละเอียด
curl -u EMAIL:PASSWORD -H "Accept:application/json" \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/apis/weatherapi/revisions/1
คำตอบตัวอย่าง
{ "configurationVersion" : { "majorVersion" : 4, "minorVersion" : 0 }, "contextInfo" : "Revision 1 of application weatherapi, in organization {org_name}", "createdAt" : 1343178905169, "createdBy" : "andrew@apigee.com", "lastModifiedAt" : 1343178905169, "lastModifiedBy" : "andrew@apigee.com", "name" : "weatherapi", "policies" : [ ], "proxyEndpoints" : [ ], "resources" : [ ], "revision" : "1", "targetEndpoints" : [ ], "targetServers" : [ ], "type" : "Application" }
องค์ประกอบการกำหนดค่าพร็อกซี API เหล่านี้มีรายละเอียดในข้อมูลอ้างอิงการกำหนดค่าพร็อกซี API
การทำให้ API ใช้งานได้ใน สภาพแวดล้อม
เมื่อกำหนดค่าพร็อกซี API ให้รับและส่งต่อคำขออย่างเหมาะสมแล้ว คุณจะทำให้พร็อกซีใช้งานได้
อย่างน้อย 1 สภาพแวดล้อม โดยปกติแล้วคุณดำเนินการซ้ำๆ บนพร็อกซี API ใน test
จากนั้นเมื่อพร้อม
คุณโปรโมตการแก้ไขพร็อกซี API เป็น prod
บ่อยครั้งคุณจะพบว่าคุณมีผลิตภัณฑ์
แก้ไขของพร็อกซี API ในสภาพแวดล้อมการทดสอบ สาเหตุหลักคือคุณจะทำน้อยกว่ามาก
ทำซ้ำในสภาพแวดล้อมที่ใช้งานจริง
ไม่สามารถเรียกใช้พร็อกซี API จนกว่าจะทำให้ใช้งานได้กับสภาพแวดล้อม เมื่อ
ทำให้การแก้ไขพร็อกซี API ใช้งานได้เป็นเวอร์ชันที่ใช้งานจริง จากนั้นคุณจะเผยแพร่ URL prod
ไปยังภายนอกได้
วิธีแสดงรายการสภาพแวดล้อม
ทุกองค์กรใน Apigee Edge มีสภาพแวดล้อมอย่างน้อย 2 สภาพแวดล้อม ได้แก่ test
และ prod
ความแตกต่างนั้นกำหนดเองได้ เป้าหมายคือให้พื้นที่แก่คุณในการยืนยันว่าพร็อกซี API ของคุณ
ทำงานได้อย่างถูกต้องก่อนที่จะให้บริการแก่นักพัฒนาซอฟต์แวร์ภายนอก
สภาพแวดล้อมแต่ละส่วนก็คือที่อยู่เครือข่ายเท่านั้น ซึ่งจะทำให้คุณสามารถแยกการรับส่งข้อมูลระหว่าง พร็อกซี API ที่คุณกําลังทํางานและพร็อกซีที่แอปเข้าถึงขณะรันไทม์
นอกจากนี้ สภาพแวดล้อมยังช่วยในการแบ่งแยกข้อมูลและทรัพยากรอีกด้วย ตัวอย่างเช่น คุณจะตั้งค่า แคชที่แตกต่างกันในการทดสอบและเวอร์ชันที่ใช้งานจริง ซึ่งสามารถเข้าถึงได้โดยพร็อกซี API ที่ดำเนินการในนั้นเท่านั้น ของคุณ
ดูสภาพแวดล้อมใน องค์กร
curl -u EMAIL:PASSWORD \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/environments
ตัวอย่างการตอบกลับ
[ "test", "prod" ]
สำรวจการทำให้ใช้งานได้
การติดตั้งใช้งาน คือการแก้ไขพร็อกซี API ที่มีการทำให้ใช้งานได้ในสภาพแวดล้อม API
พร็อกซีที่อยู่ในสถานะทำให้ใช้งานได้แล้วสามารถเข้าถึงได้ผ่านเครือข่าย ตามที่อยู่ที่กำหนดไว้ใน
<VirtualHost>
สำหรับสภาพแวดล้อมดังกล่าว
การทำให้พร็อกซี API ใช้งานได้
ไม่สามารถเรียกใช้พร็อกซี API จนกว่าจะทำให้ใช้งานได้แล้ว บริการ API เปิดตัว RESTful API ที่ช่วยให้ควบคุมกระบวนการติดตั้งใช้งานได้
การทำให้พร็อกซี API ใช้งานได้เพียง 1 เวอร์ชันในสภาพแวดล้อมในขณะนั้น ดังนั้น การแก้ไขที่ทำให้ใช้งานได้แล้วจะต้องยกเลิกการทำให้ใช้งานได้ คุณควบคุมได้ว่าจะทำให้แพ็กเกจใหม่ใช้งานได้หรือไม่ เป็นการแก้ไขใหม่หรือเขียนทับการแก้ไขเดิม
คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X ข้อมูล
ยกเลิกการทำให้การแก้ไขที่มีอยู่ใช้งานได้ก่อน ระบุชื่อสภาพแวดล้อมและหมายเลขการแก้ไขของ พร็อกซี API ที่คุณต้องการยกเลิกการทำให้ใช้งานได้
curl -X DELETE \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/environments/ENV_NAME/apis/API_NAME/revisions/REVISION_NUMBER/deployments \ -u EMAIL:PASSWORD
จากนั้นจึงทำให้การแก้ไขใหม่ใช้งานได้ ต้องมีการแก้ไขใหม่ของพร็อกซี API อยู่แล้ว
curl -X POST -H "Content-type:application/x-www-form-urlencoded" \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/environments/ENV_NAME/apis/API_NAME/revisions/REVISION_NUMBER/deployments \ -u EMAIL:PASSWORD
การติดตั้งใช้งานที่ราบรื่น (ไม่มีช่วงพัก)
หากต้องการลดโอกาสเกิดช่วงพักระหว่างการทำให้ใช้งานได้ ให้ใช้พารามิเตอร์ override
ในวิธีการทำให้ใช้งานได้ และตั้งค่าเป็น true
คุณนำพร็อกซี API เวอร์ชันหนึ่งไปใช้กับอีกเวอร์ชันหนึ่งไม่ได้ ฟิลด์แรกต้องเป็น
ยกเลิกการทำให้ใช้งานได้แล้ว การตั้งค่า override
เป็น true
หมายความว่าคุณระบุการแก้ไข 1 รายการ
ของพร็อกซี API ควรใช้งานได้ในระหว่างการแก้ไขที่ทำให้ใช้งานได้ในปัจจุบัน ผลลัพธ์ที่ได้คือ
ลำดับการทำให้ใช้งานได้จะกลับกัน โดยนำการแก้ไขใหม่ไปใช้ และเมื่อการทำให้ใช้งานได้
เสร็จสมบูรณ์ การแก้ไขที่ทำให้ใช้งานได้แล้วจะถูกยกเลิกการทำให้ใช้งานได้
ตัวอย่างต่อไปนี้ตั้งค่า override
โดยการส่งผ่านเป็นพารามิเตอร์แบบฟอร์ม
curl -X POST -H "Content-type:application/x-www-form-urlencoded" \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/e/ENV_NAME/apis/API_NAME/revisions/REVISION_NUMBER/deployments" \ -d "override=true" \ -u EMAIL:PASSWORD
คุณสามารถเพิ่มประสิทธิภาพการทำให้ใช้งานได้เพิ่มเติมโดยการตั้งค่าพารามิเตอร์ delay
พารามิเตอร์ delay
ระบุช่วงเวลาเป็นวินาที ก่อนหน้าช่วงเวลาก่อนหน้า
การแก้ไขควรยกเลิกการทำให้ใช้งานได้ ผลกระทบคือธุรกรรมบนเครื่องบินจะมีช่วงเวลาเป็น
ซึ่งเป็นขั้นตอนที่จะต้องดำเนินการก่อนที่พร็อกซี API จะประมวลผลธุรกรรมนั้น ต่อไปนี้เป็น
เกิดอะไรขึ้นกับ override=true
และชุดพารามิเตอร์ delay
- การแก้ไข 1 คือการจัดการคำขอ
- ระบบกำลังติดตั้งใช้งานการแก้ไข 2 พร้อมกัน
- เมื่อทำให้การแก้ไข 2 ใช้งานได้โดยสมบูรณ์แล้ว ระบบจะส่งการรับส่งข้อมูลใหม่ไปยังการแก้ไข 2 ไม่มีการเข้าชมใหม่ ที่ส่งไปยังการแก้ไข 1
- อย่างไรก็ตาม การแก้ไข 1 อาจยังประมวลผลธุรกรรมที่มีอยู่ เมื่อตั้งค่า
พารามิเตอร์
delay
(เช่น 15 วินาที) จะให้การแก้ไข 1 15 วินาทีเป็น ดำเนินธุรกรรมที่มีอยู่ให้เสร็จสิ้น - หลังจากช่วงการหน่วงเวลา ระบบจะยกเลิกการทำให้การแก้ไข 1 ใช้งานได้
curl -X POST -H "Content-type:application/x-www-form-urlencoded" \ https://api.enterprise.apigee.com/v1/o/ORG_NAME/e/ENV_NAME/apis/API_NAME/revisions/REVISION_NUMBER/deployments?delay=15" \ -d "override=true" \ -u EMAIL:PASSWORD
พารามิเตอร์การค้นหา | คำอธิบาย |
---|---|
override |
ค่าเริ่มต้นคือ ตั้งค่าเป็น |
delay |
เพื่อช่วยให้การประมวลผลธุรกรรมเสร็จสมบูรณ์สำหรับการแก้ไขที่มีอยู่ก่อนวันที่
ไม่ทำให้ใช้งานได้ และตัดความเป็นไปได้ของ ค่าเริ่มต้นคือ 0 (ศูนย์) วินาที เมื่อตั้งค่า |
เมื่อใช้ override=true
ร่วมกับ delay
, HTTP 5XX
การตอบสนองระหว่างการทำให้ใช้งานได้สามารถกำจัดออกได้ เนื่องจากการแก้ไขพร็อกซี API ทั้งสองแบบ
ทำให้ใช้งานได้พร้อมกัน โดยที่การแก้ไขเวอร์ชันเก่าทำให้ระบบไม่ทำให้ใช้งานได้หลังจากเกิดความล่าช้า
ดูการทำให้ API ใช้งานได้ทั้งหมด การแก้ไข
บางครั้งคุณอาจต้องดึงข้อมูลรายการการแก้ไข API ทั้งหมดที่ทำให้ใช้งานได้ในปัจจุบัน พร็อกซี
curl https://api.enterprise.apigee.com/v1/o/ORG_NAME/apis/weatherapi/revisions/1/deployments \ -u EMAIL:PASSWORD
{ "aPIProxy" : "weatherapi", "environment" : [ { "configuration" : { "basePath" : "", "steps" : [ ] }, "name" : "test", "server" : [ { "status" : "deployed", "type" : [ "message-processor" ], "uUID" : "90096dd1-1019-406b-9f42-fbb80cd01200" }, { "status" : "deployed", "type" : [ "message-processor" ], "uUID" : "7d6e2eb1-581a-4db0-8045-20d9c3306549" }, { "status" : "deployed", "type" : [ "router" ], "uUID" : "1619e2d7-c822-45e0-9f97-63882fb6a805" }, { "status" : "deployed", "type" : [ "router" ], "uUID" : "8a5f3d5f-46f8-4e99-b4cc-955875c8a8c8" } ], "state" : "deployed" } ], "name" : "1", "organization" : "org_name" }
การตอบกลับข้างต้นมีพร็อพเพอร์ตี้หลายรายการเฉพาะสำหรับโครงสร้างพื้นฐานภายในของ Apigee Edge คุณจะเปลี่ยนการตั้งค่าเหล่านี้ไม่ได้ เว้นแต่ว่าคุณกำลังใช้ Apigee Edge ภายในองค์กร
พร็อพเพอร์ตี้สำคัญที่อยู่ในคำตอบคือ organization
environment
, aPIProxy
, name
และ state
โดย
กำลังตรวจสอบค่าคุณสมบัติเหล่านี้ คุณสามารถยืนยันว่าการแก้ไขที่ระบุของพร็อกซี API นั้น
ในสภาพแวดล้อมของคุณ
ดูการทำให้ใช้งานได้ทั้งหมดใน สภาพแวดล้อมการทดสอบ
คุณยังดึงข้อมูลสถานะการติดตั้งใช้งานสำหรับสภาพแวดล้อมที่เฉพาะเจาะจง (รวมถึงการแก้ไขได้ด้วย ของพร็อกซี API ที่ใช้งานในปัจจุบัน) โดยใช้การเรียกต่อไปนี้
curl -u EMAIL:PASSWORD https://api.enterprise.apigee.com/v1/o/ORG_NAME/environments/test/deployments
การดำเนินการนี้จะส่งคืนผลลัพธ์เดียวกันกับด้านบนสำหรับ API ทุกรายการที่ทำให้ใช้งานได้ในสภาพแวดล้อมการทดสอบ
ดูการทำให้ใช้งานได้ทั้งหมดใน องค์กร
หากต้องการดึงรายการการแก้ไขที่ทำให้ใช้งานได้ในปัจจุบันของพร็อกซี API ทั้งหมดในทุกสภาพแวดล้อม ใช้เมธอด API ต่อไปนี้
curl https://api.enterprise.apigee.com/v1/o/ORG_NAME/deployments \ -u EMAIL:PASSWORD
การดำเนินการนี้จะแสดงผลลัพธ์เดียวกับด้านบนสำหรับพร็อกซี API ทั้งหมดที่ทำให้ใช้งานได้ในสภาพแวดล้อมทั้งหมด
เนื่องจาก API เป็น RESTful คุณจึงใช้วิธี POST
ร่วมกับ JSON หรือ XML ได้
เพย์โหลด ที่ทรัพยากรเดียวกันเพื่อสร้างพร็อกซี API
สร้างโปรไฟล์สำหรับพร็อกซี API แล้ว การแสดงเริ่มต้นของพร็อกซี API อยู่ใน
สัญลักษณ์ออบเจ็กต์ JavaScript (JSON) ด้านล่างนี้เป็นการตอบสนอง JSON เริ่มต้นสำหรับคำขอ POST
ข้างต้น
ซึ่งสร้างพร็อกซี API ชื่อ weatherapi
คำอธิบายของแต่ละองค์ประกอบในโปรไฟล์
ดังต่อไปนี้:
{ "configurationVersion" : { "majorVersion" : 4, "minorVersion" : 0 }, "contextInfo" : "Revision 1 of application weatherapi, in organization {org_name}", "createdAt" : 1357172145444, "createdBy" : "you@yourcompany.com", "displayName" : "weatherapi", "lastModifiedAt" : 1357172145444, "lastModifiedBy" : "you@yourcompany.com", "name" : "weatherapi", "policies" : [ ], "proxyEndpoints" : [ ], "resources" : [ ], "revision" : "1", "targetEndpoints" : [ ], "targetServers" : [ ], "type" : "Application" }
โปรไฟล์พร็อกซี API ที่สร้างขึ้นจะแสดงโครงสร้างทั้งหมดของ API พร็อกซี:
APIProxy revision
: การทำซ้ำที่มีตัวเลขตามลำดับของพร็อกซี API ที่ดูแลโดยบริการ APIAPIProxy name
: ชื่อที่ไม่ซ้ำกันของพร็อกซี APIConfigurationVersion
: เวอร์ชันของบริการ API ที่พร็อกซี API จะใช้ การกําหนดค่าสอดคล้องกับCreatedAt
: เวลาที่สร้างพร็อกซี API ซึ่งจัดรูปแบบในเวลา UNIXCreatedBy
: อีเมลของผู้ใช้ Apigee Edge ที่สร้าง API พร็อกซีDisplayName
: ชื่อที่เข้าใจง่ายสำหรับพร็อกซี APILastModifiedAt
: เวลาที่สร้างพร็อกซี API โดยจัดรูปแบบใน UNIX เวลาLastModifiedBy
: อีเมลของผู้ใช้ Apigee Edge ที่สร้าง API พร็อกซีPolicies
: รายการนโยบายที่เพิ่มลงในพร็อกซี API นี้ProxyEndpoints
: รายการ ProxyEndpoints ที่ชื่อResources
: รายการทรัพยากร (JavaScript, Python, Java, XSLT) ที่พร้อมให้ จะดำเนินการในพร็อกซี API นี้TargetServers
: รายการ TargetServers ที่ตั้งชื่อ (ซึ่งสร้างได้โดยใช้ Management API) ซึ่งใช้ในการกำหนดค่าขั้นสูงเพื่อวัตถุประสงค์ด้านการจัดสรรภาระงานTargetEndpoints
: รายการ TargetEndpoints ที่มีชื่อ
โปรดทราบว่าองค์ประกอบหลายรายการของการกำหนดค่าพร็อกซี API ที่สร้างขึ้นโดยใช้ POST
แบบง่าย
ไม่มีวิธีการด้านบน ในหัวข้อต่อไปนี้ คุณจะได้เรียนรู้วิธีเพิ่มและกำหนดค่าคีย์
คอมโพเนนต์ของพร็อกซี API
นอกจากนี้ คุณยังอ่านเกี่ยวกับองค์ประกอบการกำหนดค่าเหล่านี้ได้ในข้อมูลอ้างอิงการกำหนดค่าพร็อกซี API
การเขียนสคริปต์กับ API
การใช้พร็อกซี API ตัวอย่าง ที่พร้อมใช้งานใน GitHub มีสคริปต์ Shell ที่รวมเครื่องมือทำให้ใช้งานได้ของ Apigee หากมีเหตุผล คุณจะใช้เครื่องมือทำให้ Python ใช้งานได้ไม่ได้ โดยคุณเรียกใช้ API ได้โดยตรง ทั้ง 2 แนวทาง ตามที่แสดงในสคริปต์ตัวอย่างด้านล่าง
การรวมเครื่องมือการทำให้ใช้งานได้
ก่อนอื่นให้ตรวจสอบว่าเครื่องมือการทำให้ Python ใช้งานได้ ที่พร้อมใช้งานในระบบของคุณ
จากนั้นสร้างไฟล์เพื่อเก็บข้อมูลเข้าสู่ระบบ ระบบจะนำเข้าสคริปต์การติดตั้งใช้งานที่คุณเขียน
การตั้งค่าเหล่านี้ ซึ่งจะช่วยให้คุณจัดการข้อมูลเข้าสู่ระบบสำหรับบัญชีของคุณได้จากส่วนกลาง ใน API
ตัวอย่างแพลตฟอร์ม ไฟล์นี้มีชื่อว่า setenv.sh
#!/bin/bash org="Your ORG on enterprise.apigee.com" username="Your USERNAME on enterprise.apigee.com" # While testing, it's not necessary to change the setting below env="test" # Change the value below only if you have an on-premise deployment url="https://api.enterprise.apigee.com" # Change the value below only if you have a custom domain api_domain="apigee.net" export org=$org export username=$username export env=$env export url=$url export api_domain=$api_domain
ไฟล์ข้างต้นทำให้การตั้งค่าทั้งหมดของคุณใช้ได้กับสคริปต์ Shell ที่รวมการทำให้ใช้งานได้ ของ Google
ตอนนี้ ให้สร้างสคริปต์ Shell ที่นำเข้าการตั้งค่าเหล่านั้น และใช้สคริปต์นั้นเพื่อเรียกใช้เครื่องมือทำให้ใช้งานได้ (ดูตัวอย่าง ตัวอย่างแพลตฟอร์ม Apigee API)
#!/bin/bash source path/to/setenv.sh echo "Enter your password for the Apigee Enterprise organization $org, followed by [ENTER]:" read -s password echo Deploying $proxy to $env on $url using $username and $org path/to/deploy.py -n {api_name} -u $username:$password -o $org -h $url -e $env -p / -d path/to/apiproxy
เพื่อให้ชีวิตของคุณง่ายขึ้น ให้สร้างสคริปต์เพื่อเรียกใช้และทดสอบ API เช่น ดังต่อไปนี้:
#!/bin/bash
echo Using org and environment configured in /setup/setenv.sh
source /path/to/setenv.sh
set -x
curl "http://$org-$env.apigee.net/{api_basepath}"
การเรียกใช้ API โดยตรง
การเขียนสคริปต์ Shell ง่ายๆ ที่ทำให้ขั้นตอนการอัปโหลดและ การทำให้พร็อกซี API ใช้งานได้
สคริปต์ด้านล่างจะเรียกใช้ API การจัดการโดยตรง เครื่องมือนี้ตรงข้ามกับ
พร็อกซี API ที่คุณกำลังอัปเดตจะสร้างไฟล์ ZIP จากไดเรกทอรี /apiproxy
ที่มีไฟล์การกำหนดค่าพร็อกซี จากนั้นจะอัปโหลด นำเข้า และทำให้
การกำหนดค่า
#!/bin/bash #This sets the name of the API proxy and the basepath where the API will be available api=api source /path/to/setenv.sh echo Delete the DS_store file on OSX echo find . -name .DS_Store -print0 | xargs -0 rm -rf find . -name .DS_Store -print0 | xargs -0 rm -rf echo "Enter your password for the Apigee Enterprise organization $org, followed by [ENTER]:" read -s password echo Undeploy and delete the previous revision # Note that you need to explicitly update the revision to be undeployed. # One benefit of the Python deploy tool is that it manages this for you. curl -k -u $username:$password "$url/v1/o/$org/e/$env/apis/$api/revisions/1/deployments" -X DELETE curl -k -u $username:$password -X DELETE "$url/v1/o/$org/apis/$api/revisions/1" rm -rf $api.zip echo Create the API proxy bundle and deploy zip -r $api.zip apiproxy echo Import the new revision to $env environment curl -k -v -u $username:$password "$url/v1/o/$org/apis?action=import&name=$api" -T $api.zip -H "Content-Type: application/octet-stream" -X POST echo Deploy the new revision to $env environment curl -k -u $username:$password "$url/v1/o/$org/e/$env/apis/$api/revisions/1/deployments" -X POST