Web service คืออะไร
Web service (เว็บเซอร์วิซ) คือการให้บริการแลกเปลี่ยนข้อมูลระหว่างอุปกรณ์ในโลก internet ซึ่งถูกออกแบบมาตอนแรกเพื่อใช้ระหว่าง human-to-machine ผ่าน HTTP ต้องถูกพัฒนามาใช้กับ machine-to-machine ในรูปแบบ XML และ JSON format นั้นคือคำตอบว่า Web service คืออะไร
ในทางเทคนิค “web service” เป็นมาตราฐานในการเชื่อมต่อ web-base application ที่วิ่งอยู่บน internet protocol โดยอาศัย XML, SOAP, WSDL และ UDDI
- XML (Extensible Markup Language) เป็น format ที่จะบอกแหล่างที่มา และ รายละเอียดข้อมูลได้
- SOAP หรือ REST เป็น protocol ที่ใช้แลกเปลี่ยนข้อมูล
- WSDL (Web Services Description Language) ใช้ในการอธิบายโครงสร้างของ service ทั้งหมด หรือ คู่มือการใช้งาน
- UDDI (Universal Description, Discovery, and Integration) เป็นส่วนกลางให้ระบบอื่นมาลงทะเบียนไว้ โดยใช้ WSDL file ทำให้ฝั่ง Client สามารถดึงเอาข้อมูลไปใช้ติดต่อกับ web service ได้
จากข้อมูลอ้างอิงหลายที่ จะพบว่ามีข้อมูลเกียวกับ web service หลากหลายมาก จึงขอสรุปเป็นหัวข้อดังนี้
- เปิดให้ใช้งานใช้งานได้ทั้ัง Internet และ Intranet
- ใช้มาตราฐาน XML format
- ไม่ได้ยึดติดกับ Operating system ชนิดใด หรือ ภาษา programming ชนิดไหน
- สามารถทำความเข้าใจคำสั่งด้วยลักษณะการทำงานแบบเดียวกับ XML
มี softeware จำนวนมากที่ถูกเขียนในภาษา programming ที่ต่างกัน แต่ทุกภาษาต่างก็มีความจำเป็นต้องแลกเปลี่ยนข้อมูลกับ program อื่นซึ่งตัว web service เองก็ยอมให้ทำได้ด้วยการใช้ XML tag เป็นตัวเก็บข้อมูล ซึ่งโครงสร้างข้อมูลจะถูกเก็บไว้ที่ WSDL (Web Services Description Language) ภายในจะบอกถึงรายละเอียดการทำงานของ web service ดังนี้
- ระบบหนึ่งจะทำการส่งคำสั่งไปยังอีกระบบได้อย่างไร
- parameter ไหนที่ต้องใส่ในการส่งคำสั่ง
- โครสร้างของข้อมูล XML ต้องมีลักษณะอย่างไร
- error message ที่แสดงหมายถึงคำสั่งที่ส่งมาผิดพลาดในส่วนไหน เพื่องานต่อการแก้ไข
ขั้นตอนการทำงานของ Web service
ส่วนมากนิยมเขียนกันด้วย Java และ ในการอธิบายตัวอย่างใช้ Unix Solaris ที่ทำการต่อกับ database เพื่อเก็บข้อมูล
- ฝั่ง Client ทำการโหดลข้อมูลต่างๆ มี่ใช้ในการติดต่อไปยัง server เข้าสู่ SOAP message
- ส่ง SOAP message ไปยัง web service ด้วยการทำ HTTP POST
- ฝั่ง Web service ก็จะทำการแกะข้อมูลออกจาก SOAP และเปลี่ยนเป็นคำสั่งที่ application เข้าใจ
- ในส่วน application ก็จะนำเอาคำสั่งหรือข้อมูลที่ได้ไปทำงานจนได้ผลลัพธ์ ที่ต้องส่งกลับไปหาฝั่ง Client จัดใส่ใน HTTP format
- ฝั่ง Client ก็จะแกะข้อมูลออกจาก SOAP message เพื่อเราผลลัพธ์
ข้อแตกต่างระหว่าง Web service กับ Web server
WEB SERVER
- เป็น software ที่ทำงานบน server ถูกออกแบบเพื่อรองรับการทำงานของ web page, web site รวมถึง web service
- Web server ทำงานโดยอาศับ HTTP protocol
- ข้อมูลที่วิ่งผ่าน web server คือ HTTP request และ HTTP response
- Software ที่ใช้ส่วนใหญ่คือ IIS, Apache
WEB SERVICES
- เป็น application ที่ทำงานบน web server ทำหน้าที่รับส่งโครงสร้างข้อมูลให้กับ program ที่เรียกใช้ ซึ่งเป็นมากกว่าการทำงานของ html ที่ browser เรียกใช้งาน
- สามารถใช้งานกับข้อมูลได้หลาย format เช่น XML, JSON
- web service ไม่จำเป็นต้องอาศัย HTTP protocol
- ปัจจุบันมี software หลักๆที่ใช้เป็น framework คือ Apache Axis, JWS หรือ .NET
ข้อดีของ Webservice
- มีมาตราฐานในการใช้งาน
- มีความยื่นหยุ่นในการใช้งาน สามารถปรับแต่งตามความต้องการ และใช้งานกันแพร่หลาย
- สามารถทำการ upgrade ได้อัตโนมัติ
- ลดค่าใช้จ่ายในการเชื่อต่อหรือสือสาร
- ทำงานได้หลายหลายภาษา
- มีมาตราฐานความปลอดภัยเพียงพอกับองค์กรขนาดใหญ่
Author: Suphakit Annoppornchai
Credit: https://saixiii.com, https://www.tutorialspoint.com
[…] ส่วนมากถูกใช้งานกับ Web service เพื่อให้ทาง programmer สามารถเขียน application […]
[…] WSDL และ SOAP การทำงานของ RESTful Webservice จะอาศัย URI/URL ของ request […]