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 » Beispiele für HTTP-Webdienste » Praktische Einführung: Verwenden von MIME-Typen in einem RAW-Dienst

 

Lektion 3: Senden einer RAW-Anforderung und Empfangen einer RAW-Antwort

In dieser Lektion rufen Sie die in der vorangehenden Lektion erstellte Wrapper-Prozedur auf, die eine Anforderung an die in der ersten Lektion erstellte Webserverdatenbank sendet. Weitere Hinweise zum in dieser Lektion beschriebenen Einrichten einer Webclient-Datenbank für das Senden von Anforderungen finden Sie unter Lektion 2: Einrichten einer Webclient-Datenbank zum Senden von RAW-Anforderungen und Empfangen von RAW-Antworten.

Hinweis

Diese Lektion enthält mehrere Referenzen auf localhost. Verwenden Sie die IP-Adresse der Serverdatenbank aus Lektion 1 an Stelle von localhost, wenn der Webclient nicht auf demselben Computer wie die Serverdatenbank ausgeführt wird.

 ♦  So senden Sie eine Anforderung
  1. Stellen Sie in Interactive SQL eine Verbindung mit der Clientdatenbank her, wenn diese nicht bereits von der zweiten Lektion her geöffnet ist.

    dbisql -c "UID=DBA;PWD=sql;SERVER=echo_client"
  2. Rufen Sie die Wrapper-Prozedur auf, um die Anforderung zu senden und die Antwort zu erhalten.

    Führen Sie in Interactive SQL das folgende SQL-Skript aus:

    CALL setMIME('<hello>this is xml</hello>', 
        'text/xml', 
        'http://localhost:8082/EchoService'
    );

    Die Variable http://localhost:8082/EchoService gibt an, dass der Datenbankserver auf localhost ausgeführt wird und Port 8082 überwacht. Der gewünschte SOAP-Webdienst hat den Namen EchoService.

In Interactive SQL wird folgende Ergebnismenge angezeigt:

Attribut Wert
Status HTTP/1.1 200 OK
Body <hello>this is xml</hello>
Date Don, 4. Feb 2010, 13:37:23 WEZ
Connection close
Expires Don, 4. Feb 2010, 13:37:23 WEZ
Content-Type text/plain; charset=windows-1252
Server SQLAnywhere/12.0.0.1234

Der folgende Code zeigt das HTTP-Paket, das an den Webserver gesendet wird:



POST /EchoService HTTP/1.0
Date: Thu, 04 Feb 2010 13:37:23 GMT
Host: localhost
Accept-Charset: windows-1252, UTF-8, *
User-Agent: SQLAnywhere/12.0.0.1234
Content-Type: text/xml; charset=windows-1252
Content-Length: 49
ASA-Id: 1055532613:echo_client:echo:968000
Connection: close

valueAsXML=<hello>this is xml</hello>

Der folgende Code zeigt die Antwort vom Webserver:

HTTP/1.1 200 OK
Server: SQLAnywhere/12.0.0.1234
Date: Thu, 04 Feb 2010 13:37:23 GMT
Expires: Thu, 04 Feb 2010 13:37:23 GMT
Content-Type: text/plain; charset=windows-1252
Connection: close

<hello>this is xml</hello>