API คือกลไกที่ช่วยให้ส่วนประกอบซอฟต์แวร์สองส่วนสามารถสื่อสารกันได้โดยใช้ชุดคำจำกัดความและโปรโตคอล ตัวอย่างเช่น ระบบซอฟต์แวร์ของสำนักพยากรณ์อากาศประกอบด้วยข้อมูลสภาพอากาศรายวัน แอปสภาพอากาศในโทรศัพท์ของคุณจะ "สื่อสาร" กับระบบนี้ผ่าน API และแสดงการอัปเดตสภาพอากาศทุกวันบนโทรศัพท์ของคุณ Show
API ย่อมาจากอะไรAPI ย่อมาจาก “Application Program Interface” (ส่วนต่อประสานโปรแกรมประยุกต์) ในบริบทของ API คำว่า “Application” หมายถึงทุกซอฟต์แวร์ที่มีฟังก์ชันชัดเจน ส่วน “Interface” อาจถือเป็นสัญญาบริการระหว่างสองแอปพลิเคชัน ซึ่งสัญญานี้จะกำหนดวิธีที่ทั้งสองสื่อสารกันโดยใช้คำขอและการตอบกลับ เอกสารประกอบ API มีข้อมูลเกี่ยวกับวิธีที่นักพัฒนาจัดโครงสร้างคำขอและการตอบกลับเหล่านั้น API ทำงานอย่างไรสถาปัตยกรรม API มักจะถูกอธิบายในแง่ของไคลเอ็นต์และเซิร์ฟเวอร์ แอปพลิเคชันที่ส่งคำขอเรียกว่าไคลเอ็นต์ และแอปพลิเคชันที่ส่งการตอบกลับเรียกว่าเซิร์ฟเวอร์ ในตัวอย่างสภาพอากาศ ฐานข้อมูลสภาพอากาศของสำนักงานคือเซิร์ฟเวอร์ และแอปมือถือคือไคลเอ็นต์ API ทำงานใน 4 รูปแบบด้วยกัน โดยขึ้นอยู่กับเวลาและสาเหตุที่สร้าง API SOAP APIAPI เหล่านี้ใช้ Simple Object Access Protocol (โปรโตคอลการเข้าถึงอ็อบเจกต์อย่างง่าย) ไคลเอ็นต์และเซิร์ฟเวอร์จะแลกเปลี่ยนข้อความโดยใช้ XML ซึ่งเป็น API ที่มีความยืดหยุ่นน้อยซึ่งเคยได้รับความนิยมมากกว่านี้ในอดีต RPC APIAPI เหล่านี้เรียกว่า Remote Procedure Call (การเรียกใช้กระบวนการระยะไกล) ไคลเอ็นต์ดำเนินการฟังก์ชัน (หรือกระบวนการ) หนึ่งๆ บนเซิร์ฟเวอร์ และเซิร์ฟเวอร์ส่งผลลัพธ์กลับไปยังไคลเอ็นต์ Websocket APIWebsocket API คืออีกหนึ่งการพัฒนา Web API สมัยใหม่ที่ใช้อ็อบเจกต์ JSON ในการส่งข้อมูล WebSocket API รองรับการสื่อสารสองทางระหว่างแอปไคลเอ็นต์และเซิร์ฟเวอร์ เซิร์ฟเวอร์สามารถส่งข้อความเรียกกลับไปยังไคลเอ็นต์ที่เชื่อมต่อ จึงทำให้มีประสิทธิภาพมากกว่า REST API REST APIAPI เหล่านี้เป็น API ที่ได้รับความนิยมและยืดหยุ่นที่สุดที่พบในเว็บไซต์ปัจจุบัน ไคลเอ็นต์ส่งคำขอไปยังเซิร์ฟเวอร์เป็นข้อมูล เซิร์ฟเวอร์ใช้ข้อมูลอินพุตจากไคลเอ็นต์นี้เพื่อเริ่มต้นฟังก์ชันภายในและส่งคืนข้อมูลเอาต์พุตกลับไปยังไคลเอ็นต์ ดูรายละเอียดเพิ่มเติมเกี่ยวกับ REST API ด้านล่างนี้ REST API คืออะไรREST ย่อมาจาก Representational State Transfer (การโอนสถานะแบบตัวแทน) REST ช่วยกำหนดชุดฟังก์ชันต่างๆ เช่น GET, PUT, DELETE ฯลฯ ที่ไคลเอ็นต์สามารถใช้เพื่อเข้าถึงข้อมูลเซิร์ฟเวอร์ได้ ไคลเอ็นต์และเซิร์ฟเวอร์แลกเปลี่ยนข้อมูลโดยใช้ HTTP คุณสมบัติหลักของ REST API คือ ความเป็นอิสระ ความเป็นอิสระหมายความว่าเซิร์ฟเวอร์จะไม่บันทึกข้อมูลไคลเอ็นต์ระหว่างคำขอ คำขอของไคลเอ็นต์ไปยังเซิร์ฟเวอร์นั้นคล้ายกับ URL ที่คุณพิมพ์ในเบราว์เซอร์ของคุณเพื่อเยี่ยมชมเว็บไซต์ การตอบสนองจากเซิร์ฟเวอร์เป็นข้อมูลธรรมดา โดยไม่มีการแสดงผลแบบกราฟิกทั่วไปของหน้าเว็บ Web API คืออะไรWeb API หรือ Web Service API คือส่วนติดต่อการประมวลผลแอปพลิเคชันระหว่างเว็บเซิร์ฟเวอร์และเว็บเบราว์เซอร์ บริการเว็บทั้งหมดเป็น API แต่ API ไม่ได้เป็นบริการเว็บทั้งหมด REST API เป็น Web API ชนิดพิเศษที่ใช้รูปแบบสถาปัตยกรรมมาตรฐานที่อธิบายไว้ข้างต้น คำศัพท์ต่างๆ เกี่ยวกับ API เช่น Java API หรือ Service API เกิดขึ้นเนื่องจากในอดีต API ถูกสร้างขึ้นก่อนเวิลด์ไวด์เว็บ Web API สมัยใหม่ คือ REST API และสามารถใช้คำแทนกันได้ การผสานรวม API คืออะไรการผสานรวม API เป็นส่วนประกอบซอฟต์แวร์ที่อัปเดตข้อมูลระหว่างไคลเอ็นต์และเซิร์ฟเวอร์โดยอัตโนมัติ ตัวอย่างบางส่วนของการผสานรวม API คือ เมื่อข้อมูลอัตโนมัติซิงค์กับระบบคลาวด์จากแกลเลอรีรูปภาพในโทรศัพท์ของคุณ หรือซิงค์เวลาและวันที่บนแล็ปท็อปของคุณโดยอัตโนมัติเมื่อคุณเดินทางไปยังเขตเวลาอื่น องค์กรต่างๆ ยังสามารถใช้ฟังก์ชันเหล่านี้เพื่อทำให้ฟังก์ชันต่างๆ ของระบบเป็นไปโดยอัตโนมัติได้อย่างมีประสิทธิภาพ .67a41a2ef9823282fe672434ddd56dd22c13d5a5.png) ประโยชน์ของ REST API มีอะไรบ้างREST API มีประโยชน์หลักๆ 4 ประการด้วยกัน ได้แก่ 1. การผสานรวมAPI ใช้เพื่อรวมแอปพลิเคชันใหม่เข้ากับระบบซอฟต์แวร์ที่มีอยู่เดิม ซึ่งช่วยเพิ่มความเร็วในการพัฒนาได้ เพราะไม่ต้องเขียนฟังก์ชันแต่ละอย่างขึ้นใหม่ตั้งแต่ต้น คุณสามารถให้ API ใช้ปโค้ดที่มีอยู่แล้วก็ได้ 2. นวัตกรรมทั้งอุตสาหกรรมสามารถเปลี่ยนแปลงได้ด้วยการมาถึงของแอปใหม่ ธุรกิจจำเป็นต้องตอบสนองอย่างรวดเร็วและรองรับการนำบริการที่เป็นนวัตกรรมใหม่ไปใช้งานจริงได้อย่างรวดเร็ว และสามารถทำได้โดยทำการเปลี่ยนแปลงที่ระดับ API โดยไม่ต้องเขียนโค้ดใหม่ทั้งหมด 3. การขยายAPI นำเสนอโอกาสเฉพาะสำหรับธุรกิจต่างๆ ในการตอบสนองความต้องการของลูกค้าในแพลตฟอร์มต่างๆ ตัวอย่างเช่น Map API อนุญาตให้รวมข้อมูลแผนที่ผ่านเว็บไซต์, Android, iOS เป็นต้น ทุกธุรกิจสามารถให้การเข้าถึงฐานข้อมูลภายในที่คล้ายคลึงกันได้โดยใช้ API แบบฟรีหรือแบบชำระเงิน 4 การบำรุงรักษาที่ง่ายดายAPI ทำหน้าที่เป็นเกตเวย์ระหว่างสองระบบ แต่ละระบบจำเป็นต้องทำการเปลี่ยนแปลงภายในเพื่อไม่ให้ API ได้รับผลกระทบ ด้วยวิธีนี้ การเปลี่ยนแปลงโค้ดในอนาคตโดยฝ่ายหนึ่งจะไม่ส่งผลกระทบกับอีกฝ่าย ประเภท API มีอะไรบ้างAPI ถูกจัดประเภทตามสถาปัตยกรรมและขอบเขตการใช้งาน เราได้เรียนรู้ประเภทหลักของสถาปัตยกรรม API กันไปแล้ว มาดูขอบเขตการใช้งานกัน API ส่วนตัวAPI ประเภทนี้เป็นข้อมูลภายในองค์กรและใช้สำหรับเชื่อมต่อระบบและข้อมูลภายในธุรกิจเท่านั้น API สาธารณะAPI ประเภทนี้เป็นแบบสาธารณะซึ่งทุกคนสามารถนำไปใช้งานได้ อาจมีหรือไม่มีสิทธิ์อนุญาตและค่าใช้จ่ายบางส่วนที่เกี่ยวข้องกับ API ประเภทนี้ API คู่ค้านักพัฒนาภายนอกที่ได้รับอนุญาตเท่านนั้นที่มีสิทธิ์เข้าถึง API ประเภทนี้ เพื่อช่วยเหลือในด้านการร่วมมือกันระหว่างธุรกิจ API แบบรวมAPI ประเภทนี้รวมประเภท API อย่างน้อยสองประเภท เพื่อจัดการกับความต้องการหรือพฤติกรรมของระบบที่ซับซ้อน ตำแหน่งข้อมูล API คืออะไร และเหตุใดจึงมีความสำคัญตำแหน่งข้อมูล API คือจุดสัมผัสสุดท้ายในระบบการสื่อสาร API ซึ่งรวมถึง URL ของเซิร์ฟเวอร์ บริการ และตำแหน่งดิจิทัลเฉพาะอื่นๆ ที่ส่งและรับข้อมูลระหว่างระบบ ตำแหน่งข้อมูล API มีความสำคัญอย่างยิ่งต่อองค์กรต่างๆ ด้วยเหตุผลหลักสองประการ ดังนี้ 1. ความปลอดภัยตำแหน่งข้อมูล API ทำให้ระบบเสี่ยงต่อการถูกโจมตี การตรวจสอบ API จึงเป็นสิ่งสำคัญในการป้องกันไม่ให้มีการใช้ในทางที่ผิด 2. ประสิทธิภาพตำแหน่งข้อมูล API โดยเฉพาะจุดที่มีการรับส่งข้อมูลสูง อาจทำให้เกิดปัญหาคอขวดและส่งผลต่อประสิทธิภาพของระบบได้ วิธีการรักษาความปลอดภัยให้กับ REST API มีอะไรบ้างAPI ทั้งหมดต้องได้รับการรักษาความปลอดภัยผ่านการรับรองความถูกต้องและการตรวจสอบที่เหมาะสม สองวิธีหลักในการรักษาความปลอดภัยให้กับ REST API ได้แก่ 1. โทเค็นการรับรองความถูกต้องใช้เพื่ออนุญาตให้ผู้ใช้ทำการเรียก API ได้ โทเค็นการรับรองความถูกต้องจะตรวจสอบว่าผู้ใช้คือบุคคลที่อ้างจริงหรือไม่และมีสิทธิ์เข้าถึงการเรียก API นั้นๆ หรือไม่ ตัวอย่างเช่น เมื่อคุณลงชื่อเข้าใช้เซิร์ฟเวอร์อีเมล ไคลเอ็นต์อีเมลของคุณจะใช้โทเค็นการรับรองความถูกต้องเพื่อการเข้าถึงที่ปลอดภัย 2. คีย์ APIคีย์ API จะตรวจสอบโปรแกรมหรือแอปพลิเคชันที่ทำการเรียก API โดยจะระบุแอปพลิเคชันและตรวจสอบว่ามีสิทธิ์เข้าถึงที่จำเป็นในการเรียก API นั้นๆ หรือไม่ คีย์ API นั้นไม่ปลอดภัยเท่ากับโทเค็น แต่ช่วยให้สามารถตรวจสอบ API ได้เพื่อรวบรวมข้อมูลการใช้งาน คุณอาจเคยเห็นชุดอักขระและตัวเลขยาวเหยียดใน URL เบราว์เซอร์ของคุณตอนที่เยี่ยมชมเว็บไซต์ต่างๆ สตริงนี้ก็คือคีย์ API ที่เว็บไซต์ใช้ในการเรียก API ภายใน วิธีการสร้าง API มีอะไรบ้างต้องใช้ความขยันหมั่นเพียรและความพยายามในการสร้าง API ที่นักพัฒนารายอื่นไว้วางใจและอยากนำไปใช้งาน การออกแบบ API คุณภาพสูงมีอยู่ด้วยกัน 5 ขั้นตอน ดังนี้ 1. วางแผน APIข้อกำหนด API เช่น OpenAPI ถือเป็นพิมพ์เขียวในการออกแบบ API ของคุณ ควรที่จะคิดถึงกรณีการใช้งานต่างๆ ไว้ล่วงหน้า และตรวจสอบให้แน่ใจว่า API ปฏิบัติตามมาตรฐานการพัฒนา API ในปัจจุบัน 2. สร้าง APIผู้ออกแบบ API สร้างต้นแบบ API โดยใช้รหัสสำเร็จรูป เมื่อทดสอบต้นแบบแล้ว นักพัฒนาสามารถปรับแต่งให้เข้ากับข้อกำหนดภายในได้ 3. ทดสอบ APIการทดสอบ API เหมือนกับการทดสอบซอฟต์แวร์ และต้องทำเพื่อป้องกันไม่ให้มีจุดบกพร่องใดๆ โดยสามารถใช้เครื่องมือทดสอบ API เพื่อทดสอบประสิทธิภาพของ API ต่อการโจมตีทางไซเบอร์ได้ 4. จัดทำเอกสาร APIแม้ว่า API จะอธิบายในตัวเองได้ แต่เอกสารประกอบ API จะทำหน้าที่เป็นแนวทางในการปรับปรุงการใช้งาน API ที่มีการจัดทำเอกสารอย่างดีซึ่งประกอบไปด้วยฟังก์ชันและกรณีการใช้งานต่างๆ มากมายมักจะได้รับความนิยมมากกว่าสถาปัตยกรรมที่เน้นการบริการ 5. จำหน่าย APIเช่นเดียวกับที่ Amazon ซึ่งเป็นตลาดออนไลน์สำหรับการค้าปลีก API ก็มีตลาดให้นักพัฒนาได้ซื้อและขาย API อื่นๆ ได้ การจำหน่าย API ช่วยคุณสร้างรายได้ การทดสอบ API คืออะไรกลยุทธ์การทดสอบ API นั้นคล้ายคลึงกับวิธีการทดสอบซอฟต์แวร์อื่นๆ จุดสำคัญหลักอยู่ที่การตรวจสอบความถูกต้องในการตอบสนองของเซิร์ฟเวอร์ การทดสอบ API ประกอบด้วย:
วิธีการเขียนเอกสารประกอบ API มีอะไรบ้างการเขียนเอกสารประกอบ API ที่ครอบคลุมคือส่วนหนึ่งของกระบวนการจัดการ API โดยสามารถจัดทำเอกสารประกอบ API อัตโนมัติได้โดยใช้เครื่องมือ หรือจะเขียนด้วยตนเองก็ได้ แนวทางปฏิบัติที่ดีที่สุดบางส่วนมีดังนี้
วิธีการใช้ API มีอะไรบ้างขั้นตอนในการปรับใช้ API ใหม่ มีดังนี้
ฉันจะหา API ใหม่ได้จากที่ใดWeb API ใหม่ๆ หาได้ในตลาด API และไดเรกทอรี API ตลาด API เป็นแพลตฟอร์มเปิดที่ทุกคนสามารถลงขาย API ได้ ไดเรกทอรี API เป็นคลังจัดเก็บที่มีการควบคุมโดยเจ้าของไดเรกทอรี นักออกแบบ API ผู้เชี่ยวชาญอาจประเมินและทดสอบ API ใหม่ก่อนที่จะเพิ่มลงในไดเรกทอรีของตน เว็บไซต์ API ยอดนิยมบางส่วน ได้แก่
API Gateway คืออะไรAPI Gateway คือเครื่องมือการจัดการ API สำหรับลูกค้าองค์กรที่ใช้บริการแบ็คเอนด์ที่หลากหลาย API Gateway มักจะจัดการงานทั่วไป เช่น การรับรองความถูกต้องผู้ใช้ สถิติ และการจัดการอัตราที่ใช้ได้กับการเรียก API ทั้งหมด เกตเวย์ของ Amazon API เป็นบริการที่มีการจัดการเต็มรูปแบบ ซึ่งทำให้นักพัฒนาสามารถสร้าง เผยแพร่ บำรุงรักษา เฝ้าติดตาม และรักษาความปลอดภัยของ API ในทุกขนาดได้ง่าย ซึ่งคอยจัดการงานทั้งหมดที่เกี่ยวข้องในการรับและประมวลผลการเรียก API ที่เกิดขึ้นพร้อมกันหลายพันรายการ รวมถึงการจัดการปริมาณการใช้งาน, การรองรับ CORS, การอนุมัติ และการควบคุมการเข้าถึง การควบคุม การเฝ้าติดตาม และการจัดการเวอร์ชัน API GraphQL คืออะไรGraphQL เป็นภาษาการสืบค้นที่พัฒนาขึ้นสำหรับ API โดยเฉพาะ โดยจะให้ความสำคัญในการให้ข้อมูลที่ไคลเอ็นต์ร้องขอเท่านั้นและไม่ให้ข้อมูลอื่นใดอีก และได้รับการออกแบบมาเพื่อช่วยทำให้ API รวดเร็ว ยืดหยุ่น และเป็นมิตรกับนักพัฒนา ไม่ใช่เพียงแค่ REST แต่ GraphQL ก็ช่วยให้นักพัฒนาส่วนหน้าสามารถสืบค้นข้อมูลได้ในหลายฐานข้อมูล ไมโครเซอร์วิส และ API จากตำแหน่งข้อมูล GraphQL จุดเดียว หลายองค์กรเลือกที่จะสร้าง API ด้วย GraphQL เพราะช่วยให้พัฒนาแอปพลิเคชันได้เร็วยิ่งขึ้น อ่านเพิ่มเติมเกี่ยวกับ GraphQL ที่นี่ AWS AppSync เป็นบริการที่มีการจัดการเต็มรูปแบบที่ช่วยให้พัฒนา GraphQL API ได้ง่ายโดยจัดการโอนภาระการเชื่อมต่ออย่างปลอดภัยไปยังแหล่งที่มาของข้อมูลต่างๆ เช่น AWS DynamoDB, AWS Lambda และอีกมากมาย AWS AppSync สามารถส่งการอัปเดตข้อมูลแบบเรียลไทม์ผ่าน Websockets ไปยังลูกค้านับหลายล้านราย สำหรับแอปพลิเคชันมือถือและเว็บแอปพลิเคชัน AppSync ยังให้สิทธิ์เข้าถึงข้อมูลในเครื่องเมื่ออุปกรณ์ออฟไลน์อยู่ด้วย เมื่อติดตั้งใช้จริงแล้ว AWS AppSync จะปรับขนาดกลไกการดำเนินการ GraphQL API ขึ้นลงโดยอัตโนมัติเพื่อให้ตรงตามปริมาณคำขอ API วิธีการรับบริการต่างๆ ของ Amazon API มีอะไรบ้างการจัดการส่วนต่อประสานโปรแกรมประยุกต์ (API) เป็นส่วนสำคัญของการพัฒนาซอฟต์แวร์สมัยใหม่ การลงทุนในโครงสร้างพื้นฐาน API นั้นคุ้มค่า รวมถึงเครื่องมือ เกตเวย์ และสถาปัตยกรรมไมโครเซอร์วิสสำหรับผู้ใช้ทั้งภายในและภายนอก เกตเวย์ของ Amazon API มาพร้อมกับคุณสมบัติมากมายหลายอย่างสำหรับจัดการ API หลายรายการพร้อมกันอย่างมีประสิทธิภาพ คุณสามารถเรียกใช้ API ได้ฟรีถึงหนึ่งล้านครั้งโดยการลงชื่อสมัครใช้งานที่ AWS Portal AWS AppSync มีการตั้งค่า การดูแลระบบ และการบำรุงรักษา GraphQL API ที่มีการจัดการเต็มรูปแบบ ด้วยโครงสร้างพื้นฐานในตัวแบบไม่ต้องใช้เซิร์ฟเวอร์ที่มีความพร้อมใช้งานสูง คุณชำระค่าบริการเฉพาะส่วนที่คุณใช้งานเท่านั้นโดยไม่มีค่าธรรมเนียมขั้นต่ำหรือบริการที่บังคับใช้งาน หากต้องการเริ่มใช้งาน โปรดลงชื่อเข้าใช้ AWS AppSync Console |