ตัวอย่าง Web Services
ทุกโปรแกรมสามารถมีส่วนของ Web Service
การสร้างและการเขียน Web Services ไม่มีความเกี่ยวข้องกับชนิดของภาษาการเขียนโปรแกรม
ตัวอย่างหนึ่ง: ASP.NET Web Service
ในตัวอย่างนี้ เราจะใช้ ASP.NET ในการสร้าง Web Service โดยง่าย
<%@ WebService Language="VB" Class="TempConvert" %> Imports System Imports System.Web.Services Public Class TempConvert : Inherits WebService <WebMethod()> Public Function FahrenheitToCelsius (ByVal Fahrenheit As Int16) As Int16 Dim celsius As Int16 celsius = ((((Fahrenheit) - 32) / 9) * 5) Return celsius End Function <WebMethod()> Public Function CelsiusToFahrenheit (ByVal Celsius As Int16) As Int16 Dim fahrenheit As Int16 fahrenheit = ((((Celsius) * 9) / 5) + 32) Return fahrenheit End Function End Class
เอกสารนี้เป็นไฟล์ .asmx ซึ่งเป็นส่วนขยายไฟล์ของ ASP.NET สำหรับ XML Web Services
เพื่อปฏิบัติการตัวอย่างนี้ เราต้องการเซิร์ฟเวอร์ .NET
บรรทัดแรกของเอกสารนี้ระบุว่านี้เป็น Web Service ที่เขียนด้วย VB ภาษาโปรแกรม และชื่อคลาสคือ "TempConvert"
<%@ WebService Language="VB" Class="TempConvert" %>
บรรทัดต่อไปนี้นับว่าเป็นการนำอาทิตย์ "System.Web.Services" จาก .NET Framework
Imports System Imports System.Web.Services
บรรทัดของนี้นับว่าคือการประกาศ "TempConvert" ว่าเป็น WebSerivce ชนิด
Public Class TempConvert : Inherits WebService
ขั้นตอนต่อไปคือทฤษฎีของการเขียนโปรแกรม VB ธรรมดานี้มีฟังก์ชันสองฟังก์ชันหนึ่งคือการเปลี่ยนอุณหภูมิในองศาฟาเรนไฮต์เป็นองศาเซลเซียส และฟังก์ชันอีกฟังก์ชันหนึ่งคือการเปลี่ยนองศาเซลเซียสเป็นองศาฟาเรนไฮต์
ความแตกต่างเดียวกับโปรแกรมทั่วไปคือฟังก์ชันนี้ถูกเรียกว่า "WebMethod"。
กรุณาใช้ "WebMethod" ในภาษา "VB" ในโปรแกรมที่คุณต้องการให้เป็น web services。
<WebMethod()> Public Function FahrenheitToCelsius (ByVal Fahrenheit As Int16) As Int16 Dim celsius As Int16 celsius = ((((Fahrenheit) - 32) / 9) * 5) Return celsius End Function <WebMethod()> Public Function CelsiusToFahrenheit (ByVal Celsius As Int16) As Int16 Dim fahrenheit As Int16 fahrenheit = ((((Celsius) * 9) / 5) + 32) Return fahrenheit End Function
สิ่งที่คุณต้องทำครบสุดท้ายคือ หยุดฟังก์ชันและชั้น
End Function End Class
หากคุณบันทึกแบบไฟล์นี้เป็น .asmx และเผยแพร่บนเซิร์ฟเวอร์ที่สนับสนุน .NET คุณจะมี Web Service ที่ทำงานได้แล้ว
การประมวลผลอัตโนมัติของ ASP.NET
ผ่าน ASP.NET คุณไม่จำเป็นต้องเขียน WSDL และเอกสาร SOAP ด้วยตัวเอง
หากคุณตรวจสอบตัวอย่างของเราอย่างละเอียด คุณจะพบว่า ASP.NET จะทำการสร้าง WSDL และคำขอ SOAP อัตโนมัติ