Zijn er tweakers die mij een duw in de juiste richting kunnen geven?
Wat wil ik?
Ik weet dat de WinRM module van Windows 2008r2 met het SOAP protocol praat.
Ik heb een HTTP listener op een IIS machine gemaakt. Deze luistert op poort 5985.
Om te testen of het wertkt heb ik powershell gebruikt :
Dus de listener werkt.
Nu dacht ik via NuSOAP hier tegen aan te praten..
maar dat valt vies tegen.
Voorbeeld code :
Result
Nu zit mijn probleem ergens in het aanroepen van of het endpoint, of in de call ..
Normaal gesproken krijg je met een webservice via SOAP een XML set met commands terug die je kan gebruiken. Hier is dat niet het geval. Ik heb dus ook geen idee in welke format ik het moet sturen. Is er iemand die dit wel eens werkend heeft gekregen?
Versies :
Windows Client+Server (Zelfde apparaat) : Windows 2008R2
PHP :Version 5.2.14
NuSOAP : version 0.9.5
Wat wil ik?
Ik weet dat de WinRM module van Windows 2008r2 met het SOAP protocol praat.
Ik heb een HTTP listener op een IIS machine gemaakt. Deze luistert op poort 5985.
Om te testen of het wertkt heb ik powershell gebruikt :
code:
1
2
3
4
| PS C:\Users\adm-test> winrs -r:http://localhost:5985 hostname WW-01 PS C:\Users\adm-testl> |
Dus de listener werkt.
Nu dacht ik via NuSOAP hier tegen aan te praten..
maar dat valt vies tegen.
Voorbeeld code :
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
| <?php //ini_set("soap.wsdl_cache_enabled", "0"); require_once('../../libs/soap/nusoap.php'); //$endpoint = "http://localhost:5985/wsman"; $endpoint = "http://localhost:5985"; $client = new nusoap_client($endpoint,true); $command = "hostname"; $result = $client->call($command); /* DEBUG */ // Check for a fault if ($client->fault) { echo '<h2>Fault</h2><pre>'; print_r($result); echo '</pre>'; } else { // Check for errors $err = $client->getError(); if ($err) { // Display the error echo '<h2>Error</h2><pre>' . $err . '</pre>'; } else { // Display the result echo '<h2>Result</h2><pre>'; print_r($result); echo '</pre>'; } } echo '<h2>Request</h2><pre>' . htmlspecialchars($client->request, ENT_QUOTES) . '</pre>'; echo '<h2>Response</h2><pre>' . htmlspecialchars($client->response, ENT_QUOTES) . '</pre>'; echo '<h2>Debug</h2><pre>' . htmlspecialchars($client->debug_str, ENT_QUOTES) . '</pre>'; ?> |
Result
code:
1
2
3
| Error wsdl error: Getting http://localhost:5985 - HTTP ERROR: Unsupported HTTP response status 400 Bad Request (soapclient->response has contents of the response) |
Nu zit mijn probleem ergens in het aanroepen van of het endpoint, of in de call ..
Normaal gesproken krijg je met een webservice via SOAP een XML set met commands terug die je kan gebruiken. Hier is dat niet het geval. Ik heb dus ook geen idee in welke format ik het moet sturen. Is er iemand die dit wel eens werkend heeft gekregen?
Versies :
Windows Client+Server (Zelfde apparaat) : Windows 2008R2
PHP :Version 5.2.14
NuSOAP : version 0.9.5