2007/11/25

เว็บเซอร์วิส (Web Services)

เว็บเซอร์วิส (Web Services) เป็นการ "บริการ" ที่เป็นระบบซอฟต์แวร์ที่ออกแบบมาเพื่อสนับสนุนการทำงาน ระหว่างคอมพิวเตอร์กับคอมพิวเตอร์ผ่านระบบเครือข่าย โดยที่ภาษาที่ใช้ในการติดต่อสื่อสารระหว่างคอมพิวเตอร์ คือภาษาเอ็กซ์เอ็มแอล (XML) ตัวอย่างเช่น การบริการในการเช็คราคาหุ้นของตลาดหุ้นหลาย ๆ ที่และอ่านข่าวจากแหล่งข่าว ๆ หลายที่โดยให้เฉพาะข่าวของบริษัทที่ผู้ขอใช้บริการสนใจ ผู้ให้บริการเว็บเซอร์วิสหนึ่งอาจจะเป็นผู้ขอบริการเว็บเซอร์วิสอื่น ยกตัวอย่างเช่น เว็บเซอร์วิสที่ให้บริการข้อมูลก่อนการซื้อขายหุ้น อาจจะเป็นผู้ขอใช้บริการของเว็บเซอร์วิสที่ให้บริการการให้ข่าว
เว็บเซอร์วิส อาศัยส่วนประกอบหลักๆส่วน ด้วยกัน คือ SOAP,WSDL และUDDI
ความสามารถของเว็บเซอร์วิสที่ทำให้โปรแกรมคุยกับโปรแกรมได้นั้น เป็นจุดแข็งของเว็บเซอร์วิส ที่สามารถจะเชื่อมบริการหลายๆอันเข้าด้วยกัน แนวความคิดนี้ได้ถูกนำมาวางแผนและนำเสนอมาตรฐานที่จะทำให้เว็บเซอร์วิส ติดต่อกันได้อย่างมีประสิทธิภาพเช่น การใช้เอกสารภาษา WSDL (Web Services Description Language) ซึ่งเป็นภาษา XML ประเภทหนึ่ง WSDL (Web Services Description Language) ที่มาอธิบายการเรียกใช้เว็บเซอร์วิสซึ่งเปรียบเสมือนการอ่านคู่มือการใช้งานโปรแกรมนั่นเอง แต่ทว่ามีข้อแตกต่างกันตรงที่ไม่เฉพาะมนุษย์เท่านั้นที่สามารถเข้าใจคู่มือนั่น โปรแกรมที่สามารถอ่านเอกสารภาษา XML เข้าใจสามารถที่จะเข้าใจเอกสาร WSDL ได้เช่นกัน ซึ่งจากคุณสมบัตินี้ช่วยทำให้การเรียกใช้เว็บเซอร์วิสเป็นไปได้อย่างอัตโนมัติ
นอกจาก XML จะถูกใช้ในการเป็นภาษาในการอธิบายการเรียกใช้เว็บเซอร์วิสแล้ว XML ยังเป็นภาษาที่ใช้ในการบันทึกข้อมูลระหว่างผู้ให้บริการและผู้ขอใช้การบริการเว็บเซอร์วิส รูปแบบของข้อมูล XML ที่ใช้ในการติดต่อนี้เรียกว่าSOAP (Simple Object Access Protocol) เนื่องจากข้อมูลที่ติดต่ออยู่ในรูปแบบ XML ทำให้โปรแกรมต่าง ๆ สามารถติดต่อกันได้ ถึงแม้ว่าอาจจะถูกพัฒนาและเรียกใช้บนแพลตฟอร์มที่แตกต่างกัน หรือใช้ภาษาที่แตกต่างกันในการพัฒนา ทั้งนี้เนื่องจาก XML เป็นภาษาอักขระ (text) ซึ่งระบบปฎิบัติการทุกระบบสามารถเข้าใจ นอกจากนี้การที่ XMLมีแท๊ก (tag) และรูปแบบโครงสร้างที่อธิบายข้อมูลด้วยตัวมันเอง ทำให้การเข้าใจและการจัดการข้อมูล SOAP messages นั้นสามารถทำได้โดยโปรแกรมและช่วยทำให้การติดต่อระหว่าง ผู้ให้บริการและผู้ใช้เว็บเซอร์วิสเป็นไปได้อย่างอัตโนมัติ"
UDDI(Universal Discovery Description and Integration)เป็นตัวแทนที่คอยประกาศให้ผู้อื่นได้ทราบถึงเว็บเซอร์วิสของเรา โดยลงทะเบียนกับผู้ให้บริการ ไม่เช่นนั้นก็จะรู้จักกันในวงแคบเท่านั้น

ขั้นตอนการสร้างเว็บเซอร์วิส

  1. ประกาศว่าไฟล์ที่จะสร้างนี้เป็นเว็บเซอร์วิส

    <%@ Webservice Language = "VB" Class = "sample"%>
  2. เรียกใช้เนมสเปซที่จำเป็นในการสร้างเว็บเซอร์วิส

    Imports System.Web.Services
  3. สร้างคลาสที่จะทำเป็นเว็บเซอร์วิส ตัวอย่างเช่น

    Public Class sample
    Inherits System.Web.Services.Webservice
    Public Function Add(A As Double,B As Double) As Double
    Return(A+B)
    End Function
    End Class
  4. สร้างเมธอดในเว็บเซอร์วิส คือส่วนที่เป็น function หรือ procedure

    Public Function Add(A As Double,B As Double) As Double
    Return(A+B)
    End Function

No comments: