moroes

Wedos WAPI - PHP XML Example

Dec 30th, 2021 (edited)
737
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.78 KB | None | 0 0
  1. <?php
  2. // parametry XML dotazu
  3. $login = 'xxx'; // zde zadejte váš wapi login - email
  4. $wpass = 'yyy'; // zde zadejte vaše wapi heslo
  5. $auth = sha1($login.sha1($wpass).date('H', time()));
  6. $command = 'ping'; // testovací příkaz ping - pokud vše v pořádku projde, vrátí se kód 1000 - OK
  7. $cltrid = 'test_req_1'; // ID požadavku, nepovinný parametr požadavku WAPI, je vracen v odpovědi, vhodný pro přehlednost
  8.  
  9. // sestavení XML žádosti
  10. $request = '<?xml version="1.0" encoding="UTF-8"?>
  11. <request>
  12.     <user>'.$login.'</user>
  13.     <auth>'.$auth.'</auth>
  14.     <command>'.$command.'</command>
  15.     <clTRID>'.$cltrid.'</clTRID>
  16. </request>';
  17.  
  18. // adresa, kam je zasílán POST
  19. $url = 'https://api.wedos.com/wapi/xml';
  20.  
  21. // POST data, urlencode požadavku
  22. $post = 'request='.urlencode($request);
  23.  
  24. // inicializace cURL session
  25. $ch = curl_init();
  26.  
  27. // nastavení URL a POST dat
  28. curl_setopt($ch,CURLOPT_URL,$url);
  29. curl_setopt($ch,CURLOPT_POST,true);
  30. curl_setopt($ch,CURLOPT_POSTFIELDS,$post);
  31.  
  32. // odpověď chceme jako návratovou hodnotu curl_exec()
  33. curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
  34.  
  35. // doba, po kterou skript čeká na odpověď
  36. curl_setopt($ch,CURLOPT_TIMEOUT,100);
  37.  
  38. // provedení volání
  39. $res = curl_exec($ch);
  40.  
  41. // výpis výsledku na výstup se zachovaným formátováním - <pre> tag
  42. echo '<pre>'.htmlspecialchars(print_r($res, true)).'</pre>';
  43.  
  44. /*
  45.  
  46. Příklad zadání delší XML žádosti - požadavek s dalšími vstupními daty - nsset-info (příkaz i data dotazu lze samozřejmě nahradit proměnnými)
  47.  
  48. $request = '<?xml version="1.0" encoding="UTF-8"?>
  49. <request>
  50.     <user>'.$login.'</user>
  51.     <auth>'.$auth.'</auth>
  52.     <command>nsset-info</command>
  53.     <clTRID>'.$cltrid.'</clTRID>
  54.     <data>
  55.         <tld>cz</tld>
  56.         <name>WEDOS</name>
  57.     </data>
  58. </request>';
  59.  
  60. */
  61.  
  62. ?>
Add Comment
Please, Sign In to add comment