API คืออะไร
API ย่อมาจาก Application Programming Interface
API ย่อมาจาก Application Programming Interface เป็นวิธีเรียกใช้บริการหรือข้อมูลจากระบบซึ่งติดตั้งบนเครื่องแม่ข่ายอื่น หรือบนภายในข่ายเดียวกัน ซึ่งวิธีการนี้ช่วยให้นักพัฒนาสามารถเรียกใช้งานบริการเหล่านั้นได้สะดวก รวดเร็ว และลดความยุ่งยากในการติดตั้งโปรแกรมเสริมเพื่อเชื่อมโยงข้อมูลกับระบบอื่นๆ
รูปแบบการให้บริการ API
Public
เป็น API ที่เปิดกว้างให้ใครก็ได้สามารถเรียกใช้งาน โดยมีวัตถุประสงค์เพื่อเผยแพร่ข้อมูลและบริการ หรือเพื่อให้นักพัฒนานำไปใช้ทางนวัตกรรมใหม่ๆ เพื่อต่อยอดได้
Private
เป็น API ที่ให้งานภายในองค์กรหรือภายในระบบที่ได้รับอนุญาตเฉพาะเท่านั้น ซึ่ง API รูปแบบนี้ไม่อนุญาตให้ระบบหรือบุคคลภายนอกเข้าถึงได้ เพื่อป้องกันปัญหาด้านความปลอดภัยของข้อมูล และการจำกัดการเรียกใช้งานทรัพยากรขององค์กร
Partner
เป็น API ที่ใช้แลกเปลี่ยนหรือให้บริการแก่คู่ค้าทางธุรกิจในการแลกเปลี่ยนทรัพยากร ข้อมูล และบริการ ซึ่งช่วยเพิ่มศักยภาพในการให้บริการ และลดต้นทุนในการพัฒนาบริการรูปแบบเดียวกันได้ แต่อาจมีค่าใช้จ่ายในการใช้งานทดแทน
ประเภทโปรโตคอลของ API
SOAP
SOAP (Simple Object Access Protocol) เป็น API ที่มีโครงสร้างตามมาตรฐาน XML ผู้ใช้งานสามารถส่งและรับข้อมูลผ่านโปรโตคอล SMTP และ HTTP ซึ่งทำให้ง่ายในการแลกเปลี่ยนข้อมูลระหว่างแอพพลิเคชั่น หรือซอฟต์แวรที่ให้บริการอยู่ในสภาพแวดล้อมที่แตกต่าง หรือพัฒนาบนภาษาคอมพิวเตอร์ที่ต่างกัน
XML-RPC
เป็นโปรโตคอลที่ใช้รูปแบบเฉพาะของ XML ในการถ่ายโอนข้อมูลซึ่งเป็นรูปแบบที่มีการใช้งานมาก่อน SOAP แต่มีการใช้งานที่ง่ายกว่า ไม่เปลืองทรัพยากร และใช้แบนด์วิดท์ค่อนข้างน้อย
JSON-RPC
เป็นโปรโตคอลที่คล้ายกับ XML-RPC แต่ใช้รูปแบบการส่งข้อมูลแบบ JSON แทนรูปแบบ XML ในการถ่ายโอนข้อมูลซึ่งง่ายต่อการสร้างมากว่า XML แต่การเรียกใช้งานหรือส่งข้อมูลนั้นเรียบง่าย และให้ผลลัพธ์ในแบบเดียวกันกับ XML
REST
REST หรือ Representational State Transfer เป็นรูปแบบของสถาปัตยกรรมซอฟต์แวร์ ที่ใช้ประโยชน์จากเทคโนโลยีของ Web Protocol มาใช้ในการสร้าง Web Service ซึ่งอนุญาตให้ระบบอื่นขอและเข้าถึงทรัพยากรบนเว็บโดยใช้ชุดคำสั่งที่กำหนดไว้ โดยระบบจะตอบกลับมาในรูปแบบ HTML, XML, JSON หรือรูปแบบอื่นๆ
ตัวอย่างการใช้งาน
หากเราต้องการรายชื่อวิดีโอที่เรามีบน Youtube ซึ่งเป็นบริการของ Google เราเพียงต้องรู้ช่องทางในการขอข้อมูลและบริการที่ทาง Youtube ได้เตรียมไว้ให้เรานำไปใช้งาน ซึ่งอยู่ในรูปแบบของ URL ที่สามารถเข้าถึงได้ผ่านโปรโตคอล http หรือ https เช่น https://www.googleapis.com/youtube/v3 ดังรูป
ซึ่งนักพัฒนาสามารถนำ URL ที่ทางผู้ให้บริการจัดเตรียมให้ไปใช้กับเว็บไซต์หรือโปรแกรมของตนได้ดังตัวอย่างข้างล่างเป็นการนำไปใช้งานเพื่อแสดงรายการวิดีโอไว้บนเว็บไซต์
ผลลัพธ์การแสดงผลบนหน้าเว็บไซต์ที่เรียกใช้งาน
การอ้างอิง
- https://www.redhat.com/en/topics/api/what-are-application-programming-interfaces
- https://blog.axway.com/api-creation/private-partner-public-apis-whats-the-difference
- https://www.ibm.com/cloud/learn/api
- https://iamgique.medium.com/restful-api-%E0%B8%81%E0%B8%B1%E0%B8%9A-rest-api-%E0%B8%95%E0%B9%88%E0%B8%B2%E0%B8%87%E0%B8%81%E0%B8%B1%E0%B8%99%E0%B8%99%E0%B8%B0%E0%B8%A3%E0%B8%B9%E0%B9%89%E0%B8%A2%E0%B8%B1%E0%B8%87-2c70c42990e3