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

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

 

Webdiensttypen

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 table-name 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.

    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 in %SQLANYSAMP12%\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.

  • 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.

 Beispiel
 Siehe auch