คู่มือทำความเข้าใจ Application Programming Interfaces (API)
API คืออะไร?
Application Programming Interface หรือเรียกสั้น ๆ ว่า API เป็นกลไกที่ช่วยให้ซอฟต์แวร์สื่อสารกับซอฟต์แวร์อื่นโดยใช้ชุดโปรโตคอลและคำจำกัดความที่กำหนดไว้ล่วงหน้า เพื่อให้เข้าใจสิ่งนี้ได้ดีขึ้น ลองจินตนาการถึงระบบซอฟต์แวร์ที่ติดตามข้อมูลสำคัญ เช่น สภาพอากาศ แอปพลิเคชั่นสภาพอากาศบนโทรศัพท์ของคุณติดตามพยากรณ์อากาศสำหรับคุณได้อย่างไร? มัน “พูด” กับระบบซอฟต์แวร์ดังกล่าว (เช่น เซิร์ฟเวอร์ของสำนักงานอุตุนิยมวิทยาแห่งชาติ) ผ่านทาง API เพื่อแสดงข้อมูลล่าสุดแก่คุณ
สถาปัตยกรรม API
SOAP — โปรโตคอลการเข้าถึงวัตถุอย่างง่าย
API ที่ใช้สถาปัตยกรรม SOAP ใช้ XML หรือ Extensible Markup Language เพื่อแลกเปลี่ยนข้อความ นี่เป็นวิธีที่ล้าสมัยมากและได้รับความนิยมมากกว่าในอดีต
RPC — การเรียกขั้นตอนระยะไกล
สำหรับ API ที่ใช้สถาปัตยกรรม RPC ไคลเอนต์จะต้องทำหน้าที่บนเซิร์ฟเวอร์ให้สมบูรณ์เพื่อให้เซิร์ฟเวอร์ส่งเอาต์พุตที่ร้องขอกลับไปยังไคลเอนต์
Websocket — สถาปัตยกรรม API สมัยใหม่ที่ยังคงมีการเชื่อมต่อไคลเอ็นต์/เซิร์ฟเวอร์
Websocket API รองรับการสื่อสารสองทางอย่างต่อเนื่องระหว่างไคลเอนต์และเซิร์ฟเวอร์ ใน RESTful API ทั่วไป ซึ่งเราจะพูดถึงต่อไป การเชื่อมต่อจะสิ้นสุดลงเมื่อได้รับการตอบกลับจากเซิร์ฟเวอร์ ในขณะที่ websocket API การเชื่อมต่อระหว่างไคลเอนต์และเซิร์ฟเวอร์ยังคงอยู่ ทำให้มีประสิทธิภาพมากกว่า RESTful API
REST — การโอนสถานะการเป็นตัวแทน
API ที่ได้รับความนิยมและยืดหยุ่นที่สุดในปัจจุบันคือ REST API สิ่งเหล่านี้มีชุดฟังก์ชันเช่น GET, POST, DELETE ฯลฯ ที่ไคลเอนต์สามารถใช้เพื่อเข้าถึงฐานข้อมูล หนึ่งในคุณสมบัติหลักที่ให้ความได้เปรียบเหนือ websocket API อย่างน้อยก็จากมุมมองด้านความปลอดภัยก็คือว่ามันไม่มีสถานะ เซิร์ฟเวอร์ไม่บันทึกข้อมูลไคลเอนต์ระหว่างคำขอ นอกจากนี้ การตอบสนองจากเซิร์ฟเวอร์จะเป็นข้อมูลธรรมดา ซึ่งมักจะอยู่ในรูปแบบ JSON ซึ่งช่วยเพิ่มความสามารถในการอ่าน REST API เพิ่มความเร็วในการพัฒนา ช่วยให้ปรับใช้ได้รวดเร็ว และบำรุงรักษาได้ง่าย
ขอบเขตการใช้งาน API
ตอนนี้เรามีความรู้เกี่ยวกับสถาปัตยกรรมประเภทต่างๆ ของ API แล้ว เรามาดูวิธีต่างๆ ที่จะนำไปใช้โดยสรุปกันดีกว่า
- API ส่วนตัวเป็นขององค์กรและใช้สำหรับระบบปฏิบัติการภายในและการเข้าถึงฐานข้อมูลภายในเท่านั้น
- API สาธารณะ เป็นแบบเปิดและใครๆ ก็สามารถนำไปใช้ได้ โดยปกติจะเข้าถึงได้โดยการอนุญาตหรือการชำระเงิน
- API ของพันธมิตร โดยทั่วไปจะเข้าถึงได้โดยนักพัฒนาภายนอกเพื่ออำนวยความสะดวกในการเป็นพันธมิตรระหว่างธุรกิจ
- Composite API รวม API หลายตัวเข้าด้วยกันเพื่อแก้ไขข้อกำหนดที่ซับซ้อนขององค์กร
บทสรุป
ขอขอบคุณที่อ่าน และหวังว่านี่จะช่วยให้คุณเข้าใจ API ได้ หากคุณต้องการเจาะลึกเข้าไปในโลกของ API โปรดดูลิงก์แหล่งที่มาด้านล่าง
แหล่งที่มา:
"หมวกสีแดง"