พร็อกซีบริการ SOAP

คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X
ข้อมูล

สิ่งที่คุณจะได้เรียนรู้

ในบทแนะนำนี้ คุณจะได้เรียนรู้วิธี:

  • สร้างพร็อกซี Edge API จากไฟล์ WSDL
  • ทราบความแตกต่างระหว่างพร็อกซีประเภท RESTful SOAP และพร็อกซี SOAP ส่งผ่าน

ในบทแนะนำนี้ คุณจะได้ทราบวิธีใส่พร็อกซี Edge API ด้านหน้าบริการเว็บที่ใช้ SOAP

บทแนะนำนี้แสดงวิธีสร้าง RESTful API ใหม่หน้าบริการที่ใช้ SOAP แม้ว่าจะไม่มีการอธิบายรายละเอียดในส่วนนี้ แต่คุณสามารถสร้างพร็อกซีส่งผ่านที่ยอมรับเพย์โหลด SOAP และส่งไปยังบริการแบ็กเอนด์ได้

สิ่งที่ต้องมี

กำลังสร้างพร็อกซี

ซึ่งคุณจะได้ให้ Edge สร้างพร็อกซีที่จะวางหน้าบริการ SOAP พร็อกซี SOAP API มีอยู่ 2 ประเภท ได้แก่

  • ประเภทพร็อกซี REST-SOAP-REST จะสร้าง RESTful API ใหม่ที่มีเลเยอร์การแปลไปยัง SOAP ไคลเอ็นต์เรียกสิ่งนี้ว่าบริการ RESTful อื่นๆ โดยการส่งผ่านพารามิเตอร์การค้นหาซึ่งบริการแบ็กเอนด์ต้องการ Edge จะแปลค่านี้เป็นเปย์โหลด SOAP ที่บริการคาดหวัง
  • ประเภทพร็อกซีพร็อกซีส่งผ่านทำให้ไคลเอ็นต์ส่งผ่านเปย์โหลด SOAP ได้ง่าย นี่เป็นวิธีที่จะทำให้การเรียกบริการ SOAP ได้รับประโยชน์จากฟีเจอร์การจัดการ Edge

Edge

วิธีการพร็อกซีบริการ SOAP โดยใช้ Edge UI

  1. ลงชื่อเข้าใช้ apigee.com/edge
  2. เลือกพัฒนา > พร็อกซี API ในแถบนำทางด้านซ้าย
  3. คลิก +พร็อกซี
  4. คลิกบริการ SOAP
  5. ในหน้ารายละเอียดพร็อกซี ให้ป้อนข้อมูลต่อไปนี้

    ฟิลด์ คำอธิบาย
    แหล่งที่มา WSDL

    เลือก: URL

    คัดลอกและวาง URL ของ WSLD ต่อไปนี้ในช่อง ป้อน URL

    https://ws.cdyne.com/delayedstockquote/delayedstockquote.asmx?wsdl

    คลิก: ตรวจสอบ

    Apigee Edge จะได้รับไฟล์ WSDL และอ่านเพื่อดูรายการการดำเนินการที่บริการ SOAP รองรับ

    ชื่อ

    ปล่อยไว้ตามเดิม: delayedstockquote

    ชื่อนี้คือชื่อสำหรับพร็อกซี API ที่คุณสร้าง

    เส้นทางฐาน ปล่อยไว้ตามเดิม: /delayedstockquote
    คำอธิบาย (ไม่บังคับ) เพิ่มคำอธิบาย เช่น พร็อกซี WSDL API ของราคาหุ้น
  6. คลิกถัดไป
  7. ในหน้านโยบายทั่วไป ในส่วนความปลอดภัย: การให้สิทธิ์ ให้เลือกผ่าน (ไม่มีการให้สิทธิ์)
  8. คลิกถัดไป
  9. ในหน้าการดำเนินการ WSDL ให้เลือก REST to SOAP to REST

    เมื่อเลือกประเภทพร็อกซีแล้ว Edge จะแสดงรายการการดำเนินการที่จะสร้างเส้นทาง REST API รายการนี้ให้คุณเลือกจากการดำเนินการที่พบใน WSDL (ในกรณีที่คุณมีชุดเฉพาะที่ต้องการ) โปรดทราบว่าตารางจะแสดงทรัพยากรที่ไคลเอ็นต์ REST สามารถใช้เพื่อเรียกใช้บริการ SOAP แบ็กเอนด์ด้วย

    ปล่อยตัวเลือกอื่นๆ ทั้งหมดในหน้าเว็บไว้ตามเดิม

  10. คลิกถัดไป
  11. ยอมรับค่าเริ่มต้นของโฮสต์เสมือนโดยคลิกถัดไป
  12. ในหน้าสรุป ใต้การทำให้ใช้งานได้ที่เป็นตัวเลือก ให้คลิกทดสอบ แล้วคลิกสร้างและทำให้ใช้งานได้

    Edge จะสร้างพร็อกซี RESTful API และทำให้ใช้งานได้กับสภาพแวดล้อม test จาก WSDL จะกำหนดการดำเนินการที่รองรับ พารามิเตอร์อินพุต และอื่นๆ ที่รองรับ Edge จะแนะนำเมธอด HTTP ที่จะใช้สำหรับการดำเนินการแต่ละรายการ โดยปกติแล้ว Edge จะแปลการดำเนินการเป็นคำขอ GET ซึ่งมีประโยชน์ตรงที่แคชได้ Edge ยังตั้งค่าปลายทางเป้าหมายแบ็กเอนด์ด้วย ซึ่งอาจแตกต่างกันไปตามการดำเนินการ SOAP

    เพียงเท่านี้คุณก็ไม่ต้องปรับแต่งพร็อกซี API ใหม่ (และไม่ได้อยู่ในบทแนะนำนี้) คุณสามารถเปลี่ยนไปทดสอบพร็อกซี API ใหม่ได้

Classic Edge (Private Cloud)

วิธีการทำหน้าที่เป็นพร็อกซีบริการ SOAP โดยใช้ Classic Edge UI

  1. ลงชื่อเข้าใช้ http://ms-ip:9000 โดยที่ ms-ip คือที่อยู่ IP หรือชื่อ DNS ของโหนดเซิร์ฟเวอร์การจัดการ
  2. เลือก API > พร็อกซี API ในแถบนำทางด้านบน
  3. คลิก + พร็อกซี API
  4. คลิกบริการ SOAP
  5. ในหน้ารายละเอียดพร็อกซี ให้ป้อนข้อมูลต่อไปนี้

    ฟิลด์ คำอธิบาย
    WSDL

    เลือก: ตัวอย่าง URL

    แล้วเลือก
    ...delayedstockquote.asmx?WSDL

    คลิก: ตรวจสอบ

    Apigee Edge จะได้รับไฟล์ WSDL และอ่านเพื่อดูรายการการดำเนินการที่บริการ SOAP รองรับ

    ชื่อพร็อกซี

    ป้อน: delayedstockquote

    ชื่อนี้คือชื่อสำหรับพร็อกซีที่คุณกำลังสร้าง

    เส้นทางฐานพร็อกซีและคำอธิบาย ปล่อยไว้ตามเดิม
  6. คลิกถัดไป
  7. ในหน้า WSDL ให้เลือกตัวเลือกต่อไปนี้
    ในช่องนี้ สิ่งที่ต้องทำ
    ประเภทพร็อกซี API

    เลือก: REST ไปยัง SOAP ไปยัง REST

    เมื่อเลือกประเภทพร็อกซีแล้ว Edge จะแสดงรายการการดำเนินการที่จะสร้างเส้นทาง REST API ตามที่แสดงไว้ที่นี่ รายการนี้จะทำให้คุณเลือกการดำเนินการที่พบใน WSDL ได้ (ในกรณีที่คุณมีชุดเฉพาะที่ต้องการ) โปรดทราบว่าตารางจะแสดงทรัพยากรที่ไคลเอ็นต์ REST สามารถใช้เพื่อเรียกใช้บริการ SOAP แบ็กเอนด์ด้วย

    แต่ให้ปล่อยการดำเนินการชุดแรกไว้ตามเดิม

    ประเภทพอร์ต: DelayedStockquoSoap เลือกการดำเนินการ WSDL ทั้ง 3 รายการ ปล่อยการตั้งค่าอื่นๆ ไว้ตามเดิม

  8. คลิกถัดไป
  9. ในหน้าความปลอดภัย ให้เลือกผ่าน (ไม่มี)
  10. คลิกถัดไป
  11. ยอมรับค่าเริ่มต้นของ Virtual Host แล้วคลิก Next
  12. ในหน้าบิลด์ ให้ยอมรับค่าเริ่มต้นแล้วคลิกสร้างและทำให้ใช้งานได้เพื่อให้ Edge เริ่มสร้างพร็อกซี

    Edge จะสร้างพร็อกซี RESTful API จาก WSDL จะกำหนดการดำเนินการที่รองรับ พารามิเตอร์อินพุต และอื่นๆ ที่รองรับ Edge จะแนะนำเมธอด HTTP ที่จะใช้สำหรับการดำเนินการแต่ละรายการ โดยปกติแล้ว Edge จะแปลการดำเนินการเป็นคำขอ GET ซึ่งมีประโยชน์ตรงที่แคชได้ Edge ยังตั้งค่าปลายทางเป้าหมายแบ็กเอนด์ด้วย ซึ่งอาจแตกต่างกันไปตามการดำเนินการ SOAP

    เท่านี้ก็เรียบร้อย เว้นแต่คุณจะปรับแต่งพร็อกซีใหม่ (และไม่ได้อยู่ในบทแนะนำนี้) คุณสามารถไปยังการทดสอบพร็อกซีใหม่ได้

กำลังทดสอบพร็อกซี

หากต้องการลองใช้พร็อกซีที่คุณสร้าง ให้เปิดพรอมต์คำสั่งและใช้ cURL พิมพ์คำสั่งด้านล่าง โดยที่

  • ORG คือชื่อขององค์กร Edge ที่คุณสร้างพร็อกซี
  • ENV คือสภาพแวดล้อมที่ทำให้พร็อกซีใช้งานได้
  • DOMAIN สอดคล้องกับอินสแตนซ์ Edge ที่คุณใช้
curl "https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

ตัวอย่างเช่น หากองค์กรของคุณคือ docfood สภาพแวดล้อมจะเป็น test และคุณใช้ Edge Enterprise Cloud อยู่ ให้เรียกใช้คำสั่งดังนี้

curl "https://docfood-test.apigee.net/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

หากป้อน GOOG สำหรับพารามิเตอร์การค้นหา StockSymbol คุณควรได้รับราคาปัจจุบันสำหรับหุ้น Alphabet Inc. Class C เช่น

{  
   "GetQuoteResponse":{  
      "GetQuoteResult":{  
         "StockSymbol":"GOOG",
         "LastTradeAmount":819.55,
         "LastTradeDateTime":"2017-02-13T14:33:00",
         "StockChange":5.88,
         "OpenAmount":816.0,
         "DayHigh":820.96,
         "DayLow":815.49,
         "StockVolume":785064,
         "PrevCls":813.67,
         "ChangePercent":"+0.72%",
         "FiftyTwoWeekRange":"663.28 - 841.95",
         "EarnPerShare":27.88,
         "PE":29.4,
         "CompanyName":"Alphabet Inc.",
         "QuoteError":false
      }
   }
}

รับข้อมูลจำเพาะของ OpenAPI ที่สร้างโดยอัตโนมัติ

เมื่อคุณพร็อกซีบริการ SOAP โดยใช้ "REST ไปยัง SOAP ไปยัง REST" Edge จะสร้างข้อกําหนดของ OpenAPI โดยอัตโนมัติ คุณใช้ข้อกำหนด OpenAPI เพื่อสร้างเอกสาร API สำหรับ API ดังกล่าวได้

หากต้องการรับข้อมูลจำเพาะของ OpenAPI เพียงไปที่ URL นี้:

curl https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/openapi.json

เครดิตเพิ่มเติม: คุณจะทราบได้อย่างไรว่าควรใช้ทรัพยากร คำกริยา และพารามิเตอร์การค้นหาใด

ในการเรียก API ทดสอบ คุณได้ใช้ทรัพยากรและพารามิเตอร์การค้นหาที่เฉพาะเจาะจงในการเรียก cURL ไปยังบริการ SOAP แบ็กเอนด์ แต่คุณจะรู้ด้วยตนเองได้อย่างไร

แหล่งข้อมูลและคำกริยา

ในวิซาร์ดพร็อกซี API ขณะสร้างพร็อกซี คุณได้เห็นว่าการดำเนินการ SOAP จะแมปกับคำกริยาและทรัพยากร API อย่างไร แต่หากไม่ได้จดไว้ คุณจะทราบข้อมูลนี้ได้หลังจากที่สร้างพร็อกซีแล้ว

ในแท็บพัฒนาของพร็อกซี API ในแผงการนำทางด้านซ้ายคุณจะเห็นรายการโฟลว์ใต้ปลายทางของพร็อกซี คลิกขั้นตอนที่คุณสนใจ ตัวอย่างเช่น ขั้นตอน GetQuote เป็นตัวเลือกที่ดี จากนั้นดู XML ในแผงโค้ด ซึ่งแสดงเส้นทางทรัพยากรและคำกริยาสำหรับโฟลว์ในองค์ประกอบ <Condition>: /quote และ GET

พารามิเตอร์การค้นหา

หากเลือกขั้นตอนGetQuoteแล้ว ให้คลิกนโยบายแรกในมุมมองโฟลว์แบบกราฟิก ควรเป็นนโยบายดึงข้อมูลตัวแปรที่บันทึกพารามิเตอร์การค้นหาที่คาดว่าจะส่ง: StockSymbol และ LicenseKey (หากคุณค้นหาบริการ SOAP บนเว็บ บริการจะบอกคุณว่าต้องส่งอะไรบ้างสำหรับ LicenseKey)

ระบบจะบันทึกพารามิเตอร์การค้นหาที่บันทึกเป็นตัวแปรและใช้โดยนโยบายถัดไปเพื่อสร้างข้อความ SOAP