Primer učitavanja artikala putem PHP-a. Neophodno je imati SOAP ekstenziju da bi poziv mogao da se obavi.
Demo portal se može videti i probati na adresi http://portal.wings.rs/wings
Umesto aqlUsername korisnika ‘DEMO’ mogu se takođe koristiti i bilo koji drugi korisnik koji je prikazan na demo portalu (LAZA, TRADE, MP).
NAPOMENA:
Sesije, odnosno portali, se identifikuju preko cookies, tako da ako koristite API za komunikaciju sa više različitih portala, morate navesti i posebne COOKIES za svaki od njih.
OBAVEZNO promenite vrednost kolačića u jedinstvenu vrednost za svaki portal koji pozivate i za svaki domen na kojem koristite API.
Savetujemo da koristite prefikse kako biste izbegli poklapanje sa drugim korisnicima, na primer kombinacijom domena i naziva portala. Ako pozivate portal “wings” sa domena internetprodaja.com, neka vaš cookie bude “internetprodajaWings”.
- call_artikli.php
-
<?php session_start(); function callService($command) { $wingsWSusername = 'e0f45e6f9f9bd6472b2b2a241eee9aba'; $wingsWSpassword = 'bec5ec6e3a3973eb842013d1acbc804b'; $aqlUsername = 'DEMO'; $aqlPassword = 'DD'; $cookie = 'wikiWings' // OBAVEZNO PROMENITI /**/ $xmlAuthorize = "<header>" . "<wingsWSusername>{$wingsWSusername}</wingsWSusername>" . "<wingsWSpassword>{$wingsWSpassword}</wingsWSpassword>" . "<aqlUsername>{$aqlUsername}</aqlUsername>" . "<aqlPassword>{$aqlPassword}</aqlPassword>" . "</header>"; try { $soap = new SoapClient("http://ws.wings.rs/service.php?WSDL"); $soap->__setCookie($cookie, session_id()); $soap->__soapCall("processRequest", array($xmlAuthorize)); $wsAnswer = $soap->__soapCall("processRequest", array($command)); return $wsAnswer; } catch (Exception $ex) { } } // učitavaju se artikli od pozicije 0, broj artikala 10 $xmlRequest = "<request> <command name='local.cache.artikal' output='xml'> <dStart>0</dStart> <dLength>10</dLength> <dSearch></dSearch> <dNapRet>true</dNapRet> <dAtrRet>true</dAtrRet> </command> </request>" ; $result = callService($xmlRequest); $dom = new DOMDocument(); $dom->loadXML($result); // Output header("content-type: text/xml; charset=utf-8"); echo $dom->saveXML();
Napomena : Korisnik pod kojim se loguje mora da ima privilegije za poziv određenih komandi. U ovom slučaju korisnik ‘Demo’ mora da ima privilegije za pozivanje local.cache.artikal komande.