Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 (Deutsch) » SQL Anywhere Server - Programmierung » HTTP-Webdienste » SQL Anywhere als HTTP-Webserver verwenden » Webdienste auf einem HTTP-Webserver verwalten

 

Webdiensttyp wählen

Wenn ein Webbrowser oder eine Clientanwendung eine Webdienstanforderung an einen SQL Anywhere-Webdienst stellt, wird die Anforderung verarbeitet und in der Antwort eine Ergebnismenge zurückgegeben. SQL Anywhere unterstützt mehrere Webdiensttypen, mit denen Sie das Format der Ergebnismenge und die Art und Weise, wie Ergebnismengen zurückgegeben werden, steuern können. Sie legen den Webservertyp mit der TYPE-Klausel der CREATE SERVICE- bzw. der ALTER SERVICE-Anweisung nach Auswahl eines entsprechenden Webdiensttyps fest.

Die folgenden Webdiensttypen werden unterstützt:

  • HTML   Die Ergebnismenge einer Anweisung, Funktion oder Prozedur wird automatisch in ein HTML-Dokument formatiert, das eine Tabelle enthält. Webbrowser zeigen den Hauptteil des HTML-Dokuments an.

  • XML   Die Ergebnismenge einer Anweisung, Funktion oder Prozedur wird als XML-Dokument zurückgegeben. Nicht in XML formatierte Ergebnismengen werden automatisch in XML formatiert. Webbrowser zeigen den reinen XML-Code einschließlich Tags und Attributen an.

    Die XML-Formatierung entspricht der Verwendung der FOR XML RAW-Klausel in einer SELECT-Anweisung, wie in der folgenden beispielhaften SQL-Anweisung zu sehen:

    SELECT * FROM Tabellenname FOR XML RAW

  • RAW   Die Ergebnismenge einer Anweisung, Funktion oder Prozedur wird ohne automatische Formatierung zurückgegeben.

    Dieser Diensttyp bietet die größte Kontrolle über die Ergebnismenge. Jedoch, müssen Sie die Antwort generieren, indem Sie das erforderliche Markup (HTML, XML) ausdrücklich innerhalb der gespeicherten Prozedur schreiben. Sie können mit der SA_SET_HTTP_HEADER-Systemprozedur den HTTP Content-Type-Header zur Festlegung des MIME-Typs einstellen. So wird die Ergebnismenge in Webbrowsern korrekt angezeigt. Eine vollständige Liste der Webdienst-Systemprozeduren finden Sie unter Webdienst-Systemprozeduren.

    Ein Beispiel für eine gespeicherte Prozedur, die in Verbindung mit dem RAW-Webdiensttyp funktioniert, finden Sie unter Webseiten anpassen.

  • JSON   Die Ergebnismenge einer Anweisung, Funktion oder Prozedur wird in JSON (JavaScript Object Notation) zurückgegebenen. JSON ist kompakter als das XML-Format und hat eine vergleichbare Struktur. Weitere Hinweise zu JSON finden Sie unter [external link] http://www.json.org

    Dieser Dienst wird von AJAX für HTTP-Aufrufe von Webanwendungen verwendet. Ein Beispiel für den JSON-Typ finden Sie unter Beispielverzeichnis\SQLAnywhere\HTTP\json_sample.sql.

  • SOAP   Die Ergebnismenge einer Anweisung, Funktion oder Prozedur wird als SOAP-Antwort zurückgegeben. SOAP-Dienste bieten einen gemeinsamen Datenaustausch, um verschiedenen Clientanwendungen, die SOAP unterstützen, Datenzugriff zu bieten. SOAP-Anforderungs- und Antwortrahmen werden als XML-Daten unter Verwendung von HTTP (SOAP über HTTP) transportiert. Eine Anforderung an einen SOAP-Dienst muss eine gültige SOAP-Anforderung, und nicht nur eine einfache HTTP-Anforderung sein. Die Ausgabe von SOAP-Diensten kann angepasst werden, indem das FORMAT- und das DATATYPE-Attribut der CREATE bzw. ALTER SERVICE-Anweisung verwendet werden.

    Weitere Hinweise zu SOAP-Diensten finden Sie unter SOAP über HTTP-Dienste erstellen.

  • DISH   Ein DISH-Dienst (Determine SOAP Handler) ist ein SQL Anywhere SOAP-Endpunkt. Der DISH-Dienst exponiert das WSDL-Dokument (Web Services Description Language), das alle SOAP-Vorgänge (SQL Anywhere SOAP-Dienste) beschreibt, die darüber zugänglich sind. Ein SOAP-Client-Toolkit erstellt die Clientanwendung mit Schnittstellen basierend auf der WSDL. Die SOAP-Clientanwendung leitet alle SOAP-Anforderungen an den SOAP-Endpunkt (den SQL Anywhere DISH-Dienst) weiter.

    Weitere Hinweise zu DISH-Diensten finden Sie unter DISH-Dienste erstellen.

 Beispiel
 Siehe auch