มารู้จักเจ้า API กันเถอะ
Application Programming Interface (API) คือ ช่องทางการเชื่อมต่อระหว่างเว็บไซต์หนึ่งไปยังอีกเว็บไซต์หนึ่ง โดยอาจเป็นการเชื่อมต่อระหว่างผู้ใช้งานกับ Server หรือจาก Server หนึ่งเชื่อมต่อไปหาอีก Server หนึ่ง เพื่อให้ซอฟต์แวร์ภายนอกเข้าถึงและสามารถอนุญาติให้เปลี่ยนแปลงข้อมูลในเว็บไซต์นั้นๆได้อีกด้วย
บางคนอาจจะยังนึกภาพยังไม่ออกงั้นเรามาจำลองใช้ในชีวิตจริงกันดีกว่าอย่าง เช่น การสั่งอาหารเราจะจำลองให้ผู้ใช้งานคือลูกค้าเมื่อสั่งอาหารจะมีพนักงานรับออเดอร์นั่นคือ API ของเรานั่นเองส่วนเชฟก็คือ Server หรือ Applicationที่จะรับออเดอร์และทำตามออเดอร์ที่เราสั่งมา
มารู้จักประเภทของ API กันก่อน
- Open APIs: รู้จักกันใน Public APIs ไม่มีการจำกัดการเข้าถึงเพราะเป็น APIs แบบสาธารนะ
- Partner APIs: ต้องการสิทธิ์หรือการอนุญาตเฉพาะเพื่อเข้าถึง APIs ประเภทนี้
- Internal APIs: รู้จักกันใน Private APIs ใช้ได้แค่คนภายในองค์กรเท่านั้น APIs ประเภทนี้มักจะถูกนำมาใช้ภายในบริษัท
- Composite APIs: เป็นการรับข้อมูลมาทั้งหมดในครั้งเดียวและส่งข้อมูลออกไปทั้งหมดในครั้งเดียว เช่น การซื้อของออนไลน์เรามีการเพิ่มของลงตะกร้าหรือ edit ตะกร้าพอเสร็จแล้วถึงกดสั่งซื้อแล้วข้อมูลถึงไปหาผู้ขายภายในครั้งเดียวไม่ต้องรับข้อมูลการ edit ของเราทุกการกระทำ
การนำเจ้า API ไปใช้งาน
ปัจจุบันบริษัทใหญ่ๆหลายบริษัทมีการเปิด API ให้ภายนอกเข้ามาใช้งาน เช่น Facebook กับ Instagram ส่วนรูปแบบการนำเอา API ไปใช้งานมีดังนี้
1. Libraries and Frameworks
API มักจะเอาไปใช้เป็น Software library ซึ่งเขียนขึ้นตาม document ในรูปแบบภาษา program ที่ต่างกันออกไป ตามความเหมาะสมกับงาน เพื่อเอาไปทำเป็น framework ให้กับระบบใช้ในการสื่อสารหากัน
2. Operating Systems
API สามารถใช้งานในการสื่อสารระหว่าง Application และ Operating system เช่น POSIX หรือ มาตราฐานการสือสารของ OS เองก็มี API เป็น Command line เพื่อควบคุมการทำงานของ OS
3. Remote APIs
Remote API ทำไว้ให้ developer สามารถเข้าควบคุมทรัพยากรผ่านทาง protocol เพื่อให้มีมาตราฐานการสื่อสารเดียวกัน ถึงแม้ว่าจะเป็นคนละ technology เช่น Database APIs สามารถอนุญาตให้ developer เข้ามาดึงข้อมูลใน database หลากหลายชนิดได้ ผ่าน function เดียวกัน เพราะฉะนั้น remote APIs จึงถูกใช้บ่อยในงาน maintenance ด้วยทำทำงานที่ฝั่ง client ให้ไปดึงข้อมูลจาก server กลับลงมาทำงาน
4. Web APIs
นิยมใช้กันมากในปัจจุบัน เพราะอยู่ในกลุ่มของ HTTP และขยายออกไปสู่รูปแบบ XML และ JSON ซึ่งโดนรวมแล้วก็คืออยู่บน web service เช่น
- XML-RPC
- JSON-RPC
- SOAP (Simple Object Access Protocol) ใช้ XML format ส่งข้อมูล
- REST (Representational State Transfer) สามารถใช้ XML หรือ JSON format ส่งข้อมูล
ประโยชน์ของเจ้า API
- ช่วยในการพัฒนาเว็บไซต์หรือ Application ได้ง่ายและรวดเร็วซึ่ง API จะเป็นตัวช่วยที่นักพัฒนาไม่ต้องเข้าไปแก้ไขคำสั่งทำให้สะดวกสบายในการใช้งาน
- ช่วยให้นักพัฒนาเว็บไซต์หรือเจ้าของเว็บไซต์สามารถมีฐานผู้ชมเว็บไซต์ให้มากขึ้น
- ทำให้ผู้ใช้งานเว็บไซต์ต่าง ๆ ที่มีการติดตั้ง API ของอีกเว็บไซต์หนึ่ง ไม่ต้องเข้าหน้าเว็บไซต์ที่เป็นเจ้าของ API เพียงแต่เข้ามายังเว็บไซต์ที่มีการติดตั้ง API เท่านั้น ทำให้การรับรู้ข่าวสารต่าง ๆ ทั่วถึงกันและสะดวกในการใช้งานของผู้ใช้งานเว็บไซต์
- API สามารถรับส่งข้อมูลข้ามเครื่องแม่ขายได้ในปัจจุบันเว็บไซต์ใหญ่ ๆ หลายเว็บไซต์จะมีการเปิดให้ใช้งาน API ซึ่งเราอาจจะเห็นการใช้งาน API ได้มากขึ้น โดยเฉพาะเว็บไซต์ด้านการติดต่อสื่อสาร Social Network และ E-commerce