JScript.net: Webservices
Webservices sind in der letzten Zeit immer mehr in "Mode" gekommen und werden von immer mehr Firmen und Organisationen hoch gelobt (obwohl bisher eher wenige genau wissen, was es damit auf sich hat). Auch das .NET-Framework unterstützt nun diese neue Form des Datenaustauschs.Was sind Webservices?
Webservices sind eine relativ junge Technologie, die zum Austausch von Daten dient. Ein Service wird zumeist von einem (Web-) Server angeboten, sodass andere Benutzer darauf zugreifen und diesen Service nutzen können. Zuerst muss dazu eine Verbindung zwischen Anbieter und Nutzer hergestellt werden - z.B. über den Browser oder ein anderes Programm. Über eine definierte Sprache und die damit verbundenen Regeln stellt der Anbieter seine Dienste zur Verfügung. Ebenfalls über diese Sprache werden sämtliche Transaktionen und Kommunikation zwischen beiden geregelt. Derzeit gibt es dazu mehrere Sprachdefinitionen wobei WSDL (WebService Description Language) und SOAP (Simple Object Access Protocol) die am meisten genutzten und auch vom .NET-Framework unterstützten sind.Webservices erstellen
Da die Kommunikation über die oben genannten Sprachen verläuft bedarf es einem geeignetem Programm um einen Service nutzen zu können. Moderne Browser wie der Internet Explorer (5.x) oder Netscape Navigator (6.x/7.x) bzw. Mozilla (1.x) unterstützen diese Services in der Regel. Jedoch kann man die Services - wenn auch nicht so sehr schön - mit einem älteren Browser verwenden. Ein Webservice ist im .NET-Framework im Prinzip nichts anderes als eine Codedatei, die bestimmte Funktionen zur Verfügung stellt. Alles was zum Erstellen eines Services notwendig ist sind folgende Dinge:- Der Dateiname eines Webservices muss den Suffix .asmx tragen
- Die Datei muss als Webservice ausgezeichnet sein
- Die Datei muss mindestens eine Klassen des Typs System.Web.Services zur Verfügung stellen
function BekommeAlter(tag:int, monat:int, jahr:int) : String
{
var d:Date = new Date();
var j,t,m:int;
j = d.getYear();
m = d.getMonth()+1;
t = d.getDay()+1;
var x:int = d.getYear()-(jahr+1);
if((m > monat) || (m == monat && t > tag))
{x++;}
var res:String = 'Sie sind am '+t+'/'+m+'/'+j+
' exakt '+x+' Jahre alt.';
return res;
}
@Webservice
-Tag definiert. Er erhält zum einen das Attribut language
, mit dem die verwendete Skriptsprache definiert wird, und zum anderen das Attribut class
. Mit letzterem wird eine Klasse beschrieben, die als Webservice angeboten werden soll. Als Werte notieren wir:
<%@ WebService Language="JScript" class="Geburtstag" %>
Wie bereits genannt muss eine Klasse des TypsSystem.Web.Services
erstellt werden. Der Klassenname sollte der gleiche sein, wie der Name der als Wert des class
-Attributes angegeben wurde. Wir erweitern unser Beispiel-Service also wie folgt:
import System;
import System.Web;
import System.Web.Services;
public class Geburtstag extends WebService
{
// ...
}
WebMethodAttribute
vorangestellt bekommen. Der Beispielservice sieht fertig dann wie folgt aus:
<%@ WebService Language="JScript" class="Geburtstag" %>
import System;
import System.Web;
import System.Web.Services;
public class Geburtstag extends WebService
{
WebMethodAttribute public function BekommeAlter
(tag:int, monat:int, jahr:int) : String
{
var d:Date = new Date();
var j,t,m:int;
j = d.getYear();
m = d.getMonth()+1;
t = d.getDay()+1;
var x:int = d.getYear()-(jahr+1);
if((m > monat) || (m == monat && t > tag))
{x++;}
var res:String = 'Sie sind am '+t+'/'+m+'/'+j+
' exakt '+x+' Jahre alt.';
return res;
}
}
Darstellung: Webservices im Browser
Du arbeitest in einer Agentur oder als Freelancer?
Dann wirf doch mal einen Blick auf unsere Software FeatValue.
Weiterlesen: ⯈ JScript.NET und ASP.NET
Über uns
Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project