Layanan web adalah komponen aplikasi web.
Layanan web dapat diterbitkan, ditemukan dan digunakan di Web.
Kali ini kita akan sedikit mempelajari mengenai WSDL, SOAP, RDF, dan RSS.
Section Artikel
Sebelum kita mempelajari layanan web, kita harus memiliki pemahaman dasar tentang XML dan XML Namespaces.
Ketika semua platform utama dapat mengakses Web menggunakan browser Web, platform yang berbeda tidak dapat berinteraksi. Untuk platform ini bisa bekerja sama, aplikasi Web dikembangkan.
Aplikasi web hanyalah aplikasi yang berjalan di web. Ini dibangun di sekitar standar browser Web dan dapat digunakan oleh browser apa pun di platform apa pun.
Dengan menggunakan layanan Web, aplikasi kita dapat mempublikasikan fungsi atau pesannya ke seluruh dunia. Layanan web menggunakan XML untuk mengkodekan dan mendekode data, dan SOAP untuk mengirimkannya (menggunakan protokol terbuka). Dengan layanan Web, sistem penagihan server Win 2k dari departemen akuntansi kita dapat terhubung dengan server UNIX pemasok TI kita.
Komponen aplikasi yang dapat digunakan kembali.
Ada hal-hal yang sangat dibutuhkan aplikasi. Jadi mengapa membuat ini berulang kali?
Layanan web dapat menawarkan komponen aplikasi seperti: konversi mata uang, laporan cuaca, atau bahkan terjemahan bahasa sebagai layanan.
Hubungkan perangkat lunak yang ada.
Layanan web dapat membantu memecahkan masalah interoperabilitas dengan memberikan aplikasi yang berbeda cara untuk menghubungkan datanya.
Dengan layanan Web, kita dapat bertukar data antara aplikasi yang berbeda dan platform yang berbeda.
Aplikasi apa pun dapat memiliki komponen Layanan Web.
Layanan Web dapat dibuat apa pun bahasa pemrogramannya.
Dalam contoh berikut kita akan menggunakan ASP.NET untuk membuat Layanan Web sederhana yang mengubah suhu dari Fahrenheit ke Celsius, dan sebaliknya:
<%@ WebService Language="VBScript" Class="TempConvert" %> Imports System Imports System.Web.Services Public Class TempConvert :Inherits WebService <WebMethod()> Public Function FahrenheitToCelsius(ByVal Fahrenheit As String) As String dim fahr fahr=trim(replace(Fahrenheit,",",".")) if fahr="" or IsNumeric(fahr)=false then return "Error" return ((((fahr) - 32) / 9) * 5) end function <WebMethod()> Public Function CelsiusToFahrenheit(ByVal Celsius As String) As String dim cel cel=trim(replace(Celsius,",",".")) if cel="" or IsNumeric(cel)=false then return "Error" return ((((cel) * 9) / 5) + 32) end function end class
Dokumen ini disimpan sebagai file .asmx. Ini adalah ekstensi file ASP.NET untuk XML Web Services.
Catatan: Untuk menjalankan contoh ini, kita memerlukan server .NET.
Baris pertama dalam contoh menyatakan bahwa ini adalah Layanan Web, ditulis dalam VBScript, dan memiliki nama kelas “TempConvert”:
<%@ WebService Language="VBScript" Class="TempConvert" %>
Baris berikutnya mengimpor namespace “System.Web.Services” dari kerangka .NET:
Imports System Imports System.Web.Services
Baris berikutnya mendefinisikan bahwa kelas “Temp Convert” adalah jenis kelas Layanan Web:
Public Class TempConvert :Inherits WebService
Langkah selanjutnya adalah pemrograman VB dasar. Aplikasi ini memiliki dua fungsi. Satu untuk mengubah dari Fahrenheit ke Celsius, dan satu lagi untuk mengubah dari Celsius ke Fahrenheit.
Satu-satunya perbedaan dari aplikasi normal adalah bahwa fungsi ini didefinisikan sebagai “WebMethod ()”.
Gunakan “WebMethod ()” untuk mengubah fungsi dalam aplikasi Anda menjadi layanan web:
<WebMethod()> Public Function FahrenheitToCelsius(ByVal Fahrenheit As String) As String dim fahr fahr=trim(replace(Fahrenheit,",",".")) if fahr="" or IsNumeric(fahr)=false then return "Error" return ((((fahr) - 32) / 9) * 5) end function <WebMethod()> Public Function CelsiusToFahrenheit(ByVal Celsius As String) As String dim cel cel=trim(replace(Celsius,",",".")) if cel="" or IsNumeric(cel)=false then return "Error" return ((((cel) * 9) / 5) + 32) end function
Kemudian, akhiri kelas:
end class
Publikasikan file .asmx di server dengan dukungan .NET, dan kita akan mendapatkan Layanan Web pertama yang berfungsi.
Berikut adalah kode untuk menambahkan Layanan Web ke halaman web:
<form action='tempconvert.asmx/FahrenheitToCelsius' method="post" target="_blank"> <table> <tr> <td>Fahrenheit to Celsius:</td> <td> <input class="frmInput" type="text" size="30" name="Fahrenheit"> </td> </tr> <tr> <td></td> <td align="right"> <input type="submit" value="Submit" class="button"> </td> </tr> </table> </form> <form action='tempconvert.asmx/CelsiusToFahrenheit' method="post" target="_blank"> <table> <tr> <td>Celsius to Fahrenheit:</td> <td> <input class="frmInput" type="text" size="30" name="Celsius"> </td> </tr> <tr> <td></td> <td align="right"> <input type="submit" value="Submit" class="button"> </td> </tr> </table> </form>
Gantikan “tempconvert.asmx” dengan alamat layanan web seperti:
http://www.example.com/xml/tempconvert.asmx