Soap - wie mache ich eine Anfrage?

Alt 09.04.2011, 12:54   # 1
reginald
 
Registriert seit: 09.04.2011
Beiträge: 2
Hi,

ich habe ein Webformular, das der User ausfüllt. dannach soll via Soap an einen anderen Webserver die Inhalte meines formular gesendet werden.
Leider habe ich keine ahnung wie das geht.

zur Einfachheit möchte ich erstmal nur ein ping an den Server schicken
Soap sieht in etwa so aus.. (die echten adressen sind zensiert, soll aber so gehen ) weiss nur nicht recht wie ...bzw. was ich damit anfang

HTML-Code:
POST /test/ServTestAdr.asmx HTTP/1.1
Host: test.tes.de
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://test.tes.de/testws/Ping"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <Ping xmlns="http://test.tes.de/testws">
      <PingRequest>
        <Echo>string</Echo>
      </PingRequest>
    </Ping>
  </soap:Body>
</soap:Envelope>
doch wie versende ich so eine anfrage?
bisher habe ich
HTML-Code:
<form name="fahrten" action="http://test.tes.de/testws/ServTestAdr.asmx?op=Ping"  method="Post" target="_blank" content="text/xml" accept-charset="charset=utf-8" Content-Length="length">



</form>
das müsste der header der nachricht sein... aber wie gehts weiter, wie versende ich den rest mit dem formular?
Ergebniss des servers müsste in der neuen seiten angezeigt werden.
  Mit Zitat antworten
Alt 13.04.2011, 11:19   # 2
Arthur Spooner
Halb Mensch, halb Admin
 
Benutzerbild von Arthur Spooner
 
Registriert seit: 10.05.2006
Beiträge: 3.899
Hallo reginald,

benötigst du wirklich eine SOAP-Schnittstelle oder geht es nur darum das Formular bzw. die Felder auf die andere Seite zu übergeben?

Viele Grüße
  Mit Zitat antworten
Alt 15.04.2011, 16:21   # 3
reginald
Threadstarter
 
Registriert seit: 09.04.2011
Beiträge: 2
Zitat:
Zitat von Arthur Spooner Beitrag anzeigen
Hallo reginald,

benötigst du wirklich eine SOAP-Schnittstelle oder geht es nur darum das Formular bzw. die Felder auf die andere Seite zu übergeben?

Viele Grüße
ja das isses ja... sonst hätt ich einfach via post die paar parameter übergeben... ein xmlhttprequest scheidet hier ja aus wegen SOP-regel..
hatte zwar mal bei JavaScript SOAP Client | GURU4.netJavaScript SOAP Client | GURU4.net einen soap-client betrachtet komm aber damit nicht zurecht weil ich nicht weiß wie ich was aufrufe...
  Mit Zitat antworten
Alt 26.05.2011, 15:46   # 4
michael.engel
 
Registriert seit: 26.05.2011
Beiträge: 2
Wenn der andere Server WSDL untersützt ist dies ziemlich einfach. Allerdings ohne eine Dokumentation ist es hier dann sehr schwer zu wissen was für Operationen zur Verfügung stehen. Dann sehen Soap Aufrufe nur noch so aus:
PHP-Code:
try{ 
    
$client = new SoapClient('http://test.tes.de/testws?wsdl');
    
$result $client->Ping(
        array(
'PingRequest' => array(
            
'Echo' => 'string'
        
))
    );
    
print_r($result);
} catch (
SoapFault $sf) {
    echo 
$sf->faultstring;
} catch (
Exception $e) {
    echo 
$e->getMessage();

Man sollte bei Soap immer mit try und catch arbeiten, da es sonst schnell zu Errors kommt die hässliche Fehlerseiten auslösen, wenn mit der kommunikation mit dem Server etwas nicht stimmt ,)

Weitere Infos: PHP: SoapClient - Manual
  Mit Zitat antworten

Alt 28.05.2012, 21:08 # --
News Flash
 
Benutzerbild von News Flash
 
 
 

Das könnte Dich auch noch interessieren:

Nicht fündig geworden? Dann ohne Anmeldung in unserem Gast-Forum nachfragen.

   
Antwort
Themen-Optionen



Alle Zeitangaben in WEZ +2. Es ist jetzt 21:08 Uhr.