Create API Management instance
เข้าไปที่ https://portal.azure.com เพื่อสร้าง API Management instance ขึ้นมาก่อน
Creat API
หากขั้นตอนด้านบนไม่มีความผิดพลาดน่าจะเจอกับหน้าจอนี้ ให้คลิกที่แถบ APIs ทางด้านซ้ายมือ
จากนั้น Azure จะถามว่าจะเพิ่ม API ตัวไหนเข้ามา
ในที่นี้เราจะเลือก Blank API โดยเราจะเพิ่ม API ที่เราได้ทำการ deploy ไว้อยู่แล้วมาจัดการ
ตรงช่องที่ให้กรอก Display name, Name ให้ใส่ชื่อที่เราจะกำหนดส่วน
Web service URL ให้กรอก endpoint ของ API เราลงไป API URL suffix เมื่อกรอกลงไปจะไปต่อกับ base URL ของเรา จากนั้นให้กด create
Add Operations
เมื่อเสร็จสิ้นจากขั้นตอนด้านบนแล้ว เราควรเห็นหน้าเว็บแบบด้านล่าง
ให้ไปที่ tab API ตรงซ้ายมือแล้วคลิก จากนั้นกด Add operation ซึ่งในที่นี่จะทำเพียงแค่ GET ค่าจาก endpoint นึง และ
1.ทำการเปลี่ยนค่า url จาก response ที่แต่เดิมเป็นของ backend เรา ให้เป็น url ของ gateway รวมถึง
2.การทำ throttling (rate limit)
Display name, name แล้วแต่เรากำหนดได้แล้ว ส่วน URL ให้กรอก endpoint ที่จะไปต่อกับ base URL หลักที่เรากรอกไว้ตอนเริ่มต้น
- ทำการเปลี่ยนค่า url จาก response ที่แต่เดิมเป็นของ backend เรา ให้เป็น url ของ gateway
- ไปที่ Outbound processing และคลิกที่ </>
- เลือก Find and replace string in body ในหัวข้อ Transformation policies
- <find-and-replace from=”://exampleendpoint.azurewebsites.net” to=”://gatewayendpoint.net/”/> ให้เปลี่ยนจาก endpoint ของ backend ของเราให้เป็น endpoint ของ gateway
2.การทำ throttling (rate limit)
- คลิกที่ </> ใน inbound processing
- เลือก Limit Call rate per key จาก Access restriction policies แล้วกำหนดตามนี้ <rate-limit-by-key calls=”จำนวนครั้งที่ยิงได้" renewal-period=”ช่วงเวลาที่รอเป็นวินาที" counter-key=”@(context.Request.IpAddress)” increment-condition=”@(context.Response.StatusCode == 200)” />
Remark: อย่าลืม set headers ด้วยการเพิ่ม Ocp-Apim-Subscription-Key และเพิ่ม API ที่เราเพิ่มเข้าไป ใน product