ในโลกของการพัฒนาเว็บไซต์ในยุคปัจจุบัน ไม่มีอะไรที่ตอบโจทย์ความต้องการได้ดีไปกว่า Next.js ซึ่งเป็น Framework ที่พัฒนาขึ้นโดยทีมงาน Vercel หนึ่งในคุณสมบัติที่เด่นชัดของ Next.js ก็คือการสร้าง Web Server ที่ตอบสนองต่อ HTTP Requests ได้อย่างมีประสิทธิภาพ ในบทความนี้ เราจะมาเรียนรู้วิธีการตั้งค่าซอร์สโค้ดแบบง่าย ๆ ที่จะทำให้เราสามารถรับ HTTP Requests และตอบสนองได้อย่างเหมาะสม โดยใช้ Next.js
ก่อนที่เราจะเริ่มต้นการพัฒนา เราจำเป็นต้องติดตั้ง Node.js ในเครื่องของเราให้เรียบร้อยก่อน ถ้าหากยังไม่ติดตั้ง สามารถดาวน์โหลดได้ที่ [Node.js Official Website](https://nodejs.org)
เมื่อ Node.js ติดตั้งเรียบร้อยแล้ว ให้เปิดเทอร์มินัลและรันคำสั่งต่อไปนี้เพื่อสร้างโปรเจกต์ใหม่
ภายในโปรเจกต์ Next.js เราจะใช้ฟีเจอร์ API routes ที่ใน Next.js นั้นมีไว้ช่วยให้ผู้พัฒนาสามารถสร้าง HTTP API ได้อย่างง่ายดาย โดยเขาสามารถสร้างไฟล์ JavaScript ใหม่ภายใต้โฟลเดอร์ `pages/api` และระบบจะทำการจัดการ HTTP Requests ให้อัตโนมัติ
ตัวอย่างการสร้าง API
ให้เราสร้างไฟล์ `hello.js` ในโฟลเดอร์ `pages/api` ของโปรเจกต์ของเรา:
##### อธิบายการทำงานของโค้ด
ในโค้ดข้างต้น เราได้สร้างฟังก์ชัน `handler` ที่รับสองพารามิเตอร์คือ `req` (request) และ `res` (response). เราตรวจสอบได้ว่า ในกรณีที่คำขอ HTTP เป็นแบบ `GET` เราจะส่งกลับ JSON object ที่มีข้อความ `Hello, World!` โดยมีสถานะ 200 (OK) หากเป็นคำขอที่ไม่ใช่ `GET` เราจะส่งกลับสถานะ 405 (Method Not Allowed) และแสดงวิธีการที่รองรับ
เพื่อทดสอบ API ที่เราเพิ่งสร้างขึ้น ให้เรารันโปรเจกต์ด้วยคำสั่งต่อไปนี้ในเทอร์มินัล:
เปิดเว็บเบราว์เซอร์และไปที่ URL `http://localhost:3000/api/hello` คุณจะพบกับข้อความ `{"message":"Hello, World!"}` ที่ส่งกลับจาก API ของเรา
การสร้าง Web Server ที่รอรับ HTTP Request เช่นนี้ มีประโยชน์หลายประการที่สามารถอธิบายได้ผ่าน Use Case ที่เกิดขึ้นในโลกจริง:
1. บริการ API สำหรับ Mobile App: สมมุติว่าเรากำลังพัฒนาแอปพลิเคชันมือถือที่ต้องการดึงข้อมูลจากเซิร์ฟเวอร์ เมื่อผู้ใช้เปิดแอปพลิเคชันและกดปุ่ม เราสามารถส่ง HTTP GET Request ไปที่ API ที่เราสร้างไว้ใน Next.js เพื่อดึงข้อมูลที่ต้องการและแสดงผลให้กับผู้ใช้ 2. การทำงานร่วมกับฐานข้อมูล: API ที่เราสร้างขึ้นอาจเชื่อมต่อกับฐานข้อมูลเพื่อดึงข้อมูลที่ต้องการ เช่น ข้อมูลการจองตั๋วเครื่องบิน หากมีการทำ Request นอกจากการส่งกลับข้อความ "Hello, World!" แล้วเราสามารถดึงข้อมูลการจองนั้นเพื่อเสนอให้กับผู้ใช้ได้ 3. บริการข้อมูลทางการตลาด: เจ้าของธุรกิจสามารถสร้าง API ที่ให้ข้อมูลเกี่ยวกับยอดขายประจำวันหรือสถิติสถิติการเข้าชมเว็บไซต์ของตนได้ เมื่อมีการร้องขอข้อมูลเหล่านี้ผ่าน API จะทำให้เจ้าของสามารถติดตามความน่าสนใจของสินค้าหรือบริการได้อย่างแม่นยำ
การเขียนเว็บเซิร์ฟเวอร์ใน Next.js ไม่เพียงแต่เป็นเรื่องง่าย แต่ยังเป็นทักษะที่จำเป็นในยุคดิจิทัลเพื่อเชื่อมต่อความต้องการของผู้ใช้กับข้อมูลที่เรามีอยู่ นอกจากนี้ คุณยังสามารถนำหลักการนี้ไปประยุกต์ใช้กับโปรเจกต์ต่าง ๆ ในอนาคตได้อีกด้วย
หากคุณสนใจในการเรียนรู้เกี่ยวกับการพัฒนาโปรแกรมแบบลึกซึ้ง ไม่ว่าจะเป็น Frontend, Backend หรือ Full Stack เราขอเชิญคุณเข้ามาศึกษาร่วมกับเราได้ที่ EPT (Expert-Programming-Tutor) สถาบันที่มีผู้สอนที่มีประสบการณ์ในการพัฒนาซอฟต์แวร์มากมาย พร้อมหลักสูตรที่ทันสมัยและตรงตามความต้องการของตลาดงาน คุณจะได้พบกับการเรียนรู้ที่สนุก และช่วยพัฒนาทักษะที่สามารถนำไปใช้กับการทำงานจริงได้อย่างมีประสิทธิภาพ
พร้อมแล้วไหม? มาร่วมกันสร้างอนาคตในสายงานโปรแกรมเมอร์ไปกับเราที่ EPT!
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
Tag ที่น่าสนใจ: java c# vb.net python c c++ machine_learning web database oop cloud aws ios android
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM