Simply CRM Web Service Tutorial

Giver simpelthen en enkel, kraftfuld og sikker applikationsprogrammeringsgrænseflade (API) til at arbejde med de enheder, der er gemt i. For at bruge dette dokument skal du have en grundlæggende fortrolighed med softwareudvikling, webtjenester og Simply CRM .

Webtjenesten giver en nemmere måde at integrere blot med dine andre softwaresystemer.

API-opkaldskarakteristika

REST – API er REST-baseret, hvilket betyder, at al kommunikation mellem klienten og serveren kan ske via HTTP i form af GET- eller POST-anmodninger.

JSON – JSON bruges til at kode svaret og anmodningen.

Anmodninger og svar – Din klientapplikation forbereder og indsender en serviceanmodning til API'en. API'en behandler anmodningen og returnerer et svar, og derefter håndterer klientapplikationen svaret.

Forpligtes automatisk – Hver operation, der skriver til et Simply-objekt, begås automatisk. Dette er analogt med AUTOCOMMIT-indstillingen i SQL.

API-svaret

Svarobjekt

Alle svar vil have et af de følgende to formater.

Hvis anmodningen behandles med succes:

 <code> Svar { 
succes: boolsk = sand
resultat: Objekt // Objektet Operation Resultat
}
</code>

Hvis der opstår en fejl under behandlingen af anmodningen:

 <code> Svar { 
succes: boolsk = falsk
fejl: ErrorObject
}
</code>

Fejlobjekt

 <code> ErrorObject { 
errorCode: String // Stringrepræsentation af fejltypen
errorMessage: String // Fejlmeddelelse fra api.
}
</code>

errorCode er en strengrepræsentation af fejltypen.

Fejlhåndtering

Svaret for enhver webserviceanmodning er et JSON-objekt. Objektet har en feltsucces, som har værdien sand, hvis operationen var en succes og ellers falsk. Hvis succes er falsk, vil svarobjektet indeholde en feltfejl, der indeholder JSON-objektet. Fejlobjektet indeholder to felter errorType, en enkelt ordbeskrivelse af fejlen og errorMsg, en streng, der indeholder en beskrivelse af fejlen.

Eksempelkoden er skrevet i Php og har to afhængigheder, Zend JSON-biblioteket og Http_Client.

Kravene til at køre eksempler er givet i vejledningen

  1. En installation af Simply med webservicen;
  2. Php for at køre eksempelkoden;
  3. HTTP_Client, som kan installeres ved at udføre en pear install HTTP_Client ;
  4. Zend JSON, som du skal downloade den minimale zend-ramme til .

Logger ind

API'en bruger ikke adgangskoden til login. I stedet giver Simply en unik adgangsnøgle til hver bruger. For at hente brugernøglen skal du gå til panelet Mine præferencer for en bestemt bruger. Der finder du feltet Adgangsnøgle.

Hvert login starter en klientsession med serveren, godkender brugeren og returnerer en sessionId, som vil blive brugt til al efterfølgende kommunikation med serveren.

Login er en totrins proces. I det første trin får klienten udfordringstokenet fra serveren, som bruges sammen med brugerens adgangsnøgle til at logge på.

GetChallenge

Få et udfordringstoken fra serveren. Dette skal være en GET-anmodning.

URL-format

 <code> Anmodningstype: GET 

http: //Simply_url/webservice.php? operation = getchallenge

& brugernavn = [brugernavn]
</code>

GetChallenge eksempel

For at få udfordringstokenet skal du udføre følgende kode.

 <code> // f.eks // url-sti til Simply / webservice.php som http: //Simply_url/webservice.php 
$ endpointUrl = "http: //localhost/ws/webservice.php";
// brugernavn på den bruger, der skal logges ind.
$ userName = "admin";

$ httpc = ny HTTP_CLIENT ();
// getchallenge-anmodning skal være en GET-anmodning.
$ httpc-> get ("$ endpointUrl? operation = getchallenge & brugernavn = $ brugernavn"); $ respons = $ httpc-> currentResponse ();
// afkode json-kodesvaret fra serveren.
$ jsonResponse = Zend_JSON :: afkode ($ respons ['body']);

// kontroller, om den anmodede operation var vellykket eller ej.
hvis ($ jsonResponse ['success'] == false)
// håndtere fejlsagen.
die ('getchallenge failed:'. $ jsonResponse ['error'] ['errorMsg']);

// operation var vellykket få token fra svaret. $ challengeToken = $ jsonResponse ['resultat'] ['token'];
</code>

GetChallenge-resultat

Et objekt, der repræsenterer svarresultatet af en getchallenge-operation.

 <code> GetChallengeResult { 
token: String // Challenge token fra serveren.
serverTime: TimeStamp // Den aktuelle servertid.
expireTime: TimeStamp // Det tidspunkt, hvor tokenet udløber.
}
</code>

Nu hvor du har udfordringstokenet, kan du gå videre med login. Adgangsnøglefeltet i loginoperationen er md5-kontrolsummen af sammenkædningen af udfordringstokenet og brugerens egen adgangsnøgle. Login-operationen, i modsætning til getchallenge, er en postanmodning.

Log på

Log ind på serveren ved hjælp af udfordringstoken opnået i getchallenge-operationen.

URL-format

 <code> Anmodningstype: POST 
http: //Simply_url/webservice.php? operation = login

& brugernavn = [brugernavn]
& accessKey = [accessKey]
</code>

For accessKey skal du oprette en md5-streng efter sammenkædning af brugeradgangsnøgle fra siden Min præference og udfordringstokenet opnået fra getchallenge-resultatet.

Login eksempel

 <code> // f.eks 
// adgangsnøgle til brugeradministratoren, findes på siden med mine præferencer.
$ userAccessKey = 'dsf923rksdf3';

// opret md5-streng sammenkædning af brugeradgangsnøgle fra min præferenceside
// og udfordringstokenet opnået fra få udfordringsresultatet.
$ generatedKey = md5 ($ challengeToken. $ userAccessKey);
// login-anmodning skal være POST-anmodning.
$ httpc-> post ("$ endpointUrl",
array ('operation' => 'login', 'username' => $ userName,
'accessKey' => $ generatedKey), sandt);
$ respons = $ httpc-> currentResponse ();
// afkode json-kodesvaret fra serveren.
$ jsonResponse = Zend_JSON :: afkode ($ respons ['body']);

// operation var vellykket få token fra svaret.
hvis ($ jsonResponse ['success'] == false)
// håndtere fejlsagen.
die ('login failed:'. $ jsonResponse ['error'] ['errorMsg']);

// login vellykket uddrag sessionId og userId fra LoginResult til det kan bruges til yderligere opkald.
$ sessionId = $ jsonResponse ['resultat'] ['sessionName'];
$ userId = $ jsonResponse ['resultat'] ['userId'];

</code>

Sessions-id'et bruges til at identificere den aktuelle session og vil være en fælles parameter i alle efterfølgende anmodninger.

Login resultat

Et objekt, der repræsenterer svarresultatet af en loginoperation.

Få information

API'en giver to operationer for at få information om de tilgængelige Simply-objekter.

Den første er listetyper, som giver en liste over tilgængelige moduler. Denne liste indeholder kun moduler, den bruger, der er logget ind på, har adgang til.

Listetyper

Angiv navnene på alle de simpelthen tilgængelige objekter via API.

URL-format

 <code> Anmodningstype: GET 

http: //Simply_url/webservice.php? operation = listetyper

& sessionName = [session id]
</code>

Returnerer et kort, der indeholder nøgletypen, hvor værdien er en liste over simpelthen objektnavne.

Eksempel på listetyper

 <code> // anmodning om listetyper skal være GET-anmodning. 
$ httpc-> get ("$ endpointUrl? sessionName = $ sessionId & operation = listetyper");
$ respons = $ httpc-> currentResponse ();
// afkode json-kodesvaret fra serveren.
$ jsonResponse = Zend_JSON :: afkode ($ respons ['body']);

// operation var vellykket få token fra svaret.
hvis ($ jsonResponse ['success'] == false)
// håndtere fejlsagen.
die ('list types failed:'. $ jsonResponse ['error'] ['errorMsg']);
// Få listen over alle tilgængelige moduler.
$ modules = $ jsonResponse ['result'] ['types'];
</code>

Den anden operation er beskrevet, og den giver detaljeret typeinformation om et Simply-objekt.

Beskrive

Få typoplysningerne om et givet Simply-objekt.

URL-format

 <code> Anmodningstype: GET 

http: //Simply_url/webservice.php? operation = beskriv

& sessionName = [session id]
& elementType = [elementType]
</code>

Beskriv eksemplet

 <code> // f.eks 
// Simpelthen objektnavn, der skal beskrives, eller hvis oplysninger der anmodes om.
$ moduleName = 'Kontakter';

// brug sessionId oprettet på tidspunktet for login.
$ params = "sessionName = $ sessionId & operation = beskriv & elementType = $ moduleName";
// beskriv anmodning skal være GET-anmodning.
$ httpc-> get ("$ endpointUrl? $ params");
$ respons = $ httpc-> currentResponse ();
// afkode json-kodesvaret fra serveren.
$ jsonResponse = Zend_JSON :: afkode ($ respons ['body']);

// operation var vellykket få token fra svaret.
hvis ($ jsonResponse ['success'] == false)
// håndtere fejlsagen.
die ('beskriv objekt mislykkedes:'. $ jsonResponse ['error'] ['errorMsg']);
// få beskrive resultatobjekt. $ beskrivelse = $ jsonResponse ['resultat'];

</code>

Beskrivelsen består af følgende felter:

Navn Beskrivelse
Etiket Etiketten, der bruges til modulets navn.
Navn Navnet på modulet.
Kan oprettes En boolsk værdi, der angiver, om objektet kan oprettes.
Kan opdateres En boolsk værdi, der angiver, om objektet kan opdateres.
Kan slettes En boolsk værdi, der angiver, om objektet kan slettes.
Kan hentes En boolsk værdi, der angiver, om objektet kan hentes.
Felter Et array, der indeholder feltnavne og deres typeoplysninger.

Hvert element i feltarrayet beskriver et bestemt felt i objektet.

Typefeltet er særlig vigtigt, da det beskriver, hvilken type felt der er. Dette er et kort, der mindst indeholder et element kaldet navn, som angiver navnet på typen.

Navn Beskrivelse
Snor Et tekstfelt med en linje.
Tekst Et tekstlinje med flere linjer.
Heltal Et tekstlinje med flere linjer.
Dobbelt Et felt til for flydende tal.
Boolsk Et boolsk felt, der kan have værdierne sandt eller falsk.
Tid En streng i formatet hh: mm, som er baseret på brugerens tidsformatindstillinger.
Dato En streng, der repræsenterer en dato, vil typekortet indeholde et andet element kaldet format, som er det format, hvor værdien af dette felt forventes, baseret på brugerens indstillinger datoformat.
Dato tid En streng, der repræsenterer dato og klokkeslæt, som er baseret på brugerens datoformatindstillinger.
Autogenereret Felterne, hvor værdierne genereres automatisk af Simply. Dette er normalt et objekts ID-felt.
Reference Et felt, der viser en relation til et andet objekt. Typekortet vil indeholde et andet element kaldet refererer til, hvilket er et array, der indeholder de moduler, som feltet kan pege på.
Pickliste Et felt, der kan indeholde en af en liste over værdier. Kortet indeholder to elementer, picklistValues, som er en liste over mulige værdier, og defaultValue, som er standardværdien for picklisten.
Multipickliste Et valglistefelt, hvor flere værdier kan vælges.
telefon Et felt, der bruges til at gemme telefonnumre.
E-mail Et felt, der bruges til at gemme e-mail-id'er.
URL Et felt, der bruges til at gemme webadresser.
Skype Et felt, der bruges til at gemme Skype-id'er eller telefonnumre.
Adgangskode Et felt, der bruges til at gemme adgangskoder.
Ejer Et felt, der definerer ejeren af feltet, som kan være en gruppe eller en individuel bruger.

Beskriv resultatet

 <code> DescribeResult { 
label: String // label for modulet.
navn: String // modulets navn, som angivet i anmodningen.
kan oprettes: Boolsk // sand, hvis den indloggede bruger er tilladt, skal du oprette poster af typen og falsk ellers.
kan opdateres: Boolsk // sand, hvis den indloggede bruger har tilladelse til at opdatere poster af typen og falsk ellers.
kan slettes: Boolsk // sand, hvis den indloggede bruger har tilladelse til at slette poster af typen og falsk ellers.
kan hentes: Boolsk // sand, hvis den indloggede bruger har tilladelse, der kan hentes poster af typen og falsk ellers.
felter: Array // matrix af typen Field.
}
</code>

Mark

 <code> Felt { 

<pre class = "_ fck_mw_lspace"> navn: String // navn på feltet.


label: String // label of the field.
obligatorisk: Boolsk // sand, hvis behovet skal forsynes med værdi, mens du opretter en anmodning om oprettelse og ellers falsk.
type: FieldType // en forekomst af FieldType.
standard: anyType // standardværdien for feltet.
nillable: Boolsk // sand hvis null kan give en værdi for feltet og ellers falsk.
redigerbar: Boolsk // sand hvis felt kan forsynes med en værdi under oprettelse eller opdatering.
}
</code>

Felttype

Error 400 (Bad Request)!!1

400. That’s an error.

Your client has issued a malformed or illegal request. That’s all we know.

Eksempel 3

Opret en kontakt, og knyt den til en ny konto.

 <code> // f.eks. 3 
<p> // Opret en kontaktperson og tilknyt en ny konto.
</p> <p> // udfyld detaljerne i kontiene. userId fås fra loginResult.
$ accountData = array ('accountname' => 'Simply', 'assign_user_id' => $ userId);
// kode objektet i JSON-format for at kommunikere med serveren.
$ objectJson = Zend_JSON :: kode ($ accountData);
// navn på det modul, som posten skal oprettes til.
$ moduleName = 'Konti';
</p> <p> // sessionId fås fra loginResult.
$ params = array ("sessionName" => $ sessionId, "operation" => 'Opret',
</p>
<præ class = "_ fck_mw_lspace"> "element" => $ objectJson, "elementType" => $ moduleName);

// Opret skal være POST-anmodning. $ httpc-> post (“$ endpointUrl”, $ params, sandt); $ respons = $ httpc-> currentResponse (); // afkode json-kodesvaret fra serveren. $ jsonResponse = Zend_JSON :: afkode ($ respons ['body']);

// operation var vellykket få token fra svaret.
hvis ($ jsonResponse ['success'] == false)

// håndtere fejlsagen.
die ('create failed:'. $ jsonResponse ['error'] ['errorMsg']);

$ konto = $ jsonResponse ['resultat']; $ accountId = $ konto ['id'];

$ contactData = array ('efternavn' => 'Valiant', 'tildelt_bruger_id' => $ userId, 'account_id' => $ accountId);

// kode objektet i JSON-format for at kommunikere med serveren. $ objectJson = Zend_JSON :: kode ($ contactData); // navn på det modul, som posten skal oprettes til. $ moduleName = 'Kontakter';

// sessionId fås fra loginResult.
$ params = array (“sessionName” => $ sessionId, “operation” => 'Opret',

"element" => $ objectJson, "elementType" => $ moduleName);

// Opret skal være POST-anmodning. $ httpc-> post (“$ endpointUrl”, $ params, sandt); $ respons = $ httpc-> currentResponse (); // afkode json-kodesvaret fra serveren. $ jsonResponse = Zend_JSON :: afkode ($ respons ['body']);

// operation var vellykket få token fra svaret.
hvis ($ jsonResponse ['success'] == false)

// håndtere fejlsagen.
die ('create failed:'. $ jsonResponse ['error'] ['errorMsg']);
$ savedObject = $ jsonResponse ['resultat']; $ id = $ savedObject ['id'];

</code> </pre>

CreateResult

Et kort, der repræsenterer indholdet af et CRM-enhedsbaseret objekt. Alle referencefelter er repræsenteret ved hjælp af ID- type. En nøgle kaldet ID af typen Id repræsenterer objektets unikke ID. Dette felt er til stede for ethvert objekt, der hentes fra databasen.

Hent

Hent en eksisterende post fra serveren.

URL-format

 <code> Anmodningstype: GET 

http: //Simply_url/webservice.php? operation = hent
& session_name = [session-id]
& id = [objekt-id

</code>

Hent eksempel

Brug hentningsfunktionen til at hente et objekt ved hjælp af dets ID. Du kan hente den kontakt, der er oprettet i eksempelet Opret.

 <code> // sessionId fås fra loginResult. 
$ params = "sessionName = $ sessionId & operation = hent & id = $ id";
// Hent skal være GET Request.
$ httpc-> get ("$ endpointUrl? $ params");
$ respons = $ httpc-> currentResponse ();
// afkode json-kodesvaret fra serveren.
$ jsonResponse = Zend_JSON :: afkode ($ respons ['body']);
// operation var vellykket få token fra svaret.

hvis ($ jsonResponse ['success'] == false)
// håndtere fejlsagen.
die ('retrieve failed:'. $ jsonResponse ['error'] ['errorMsg']);

$ retrievedObject = $ jsonResponse ['resultat'];
</code>

RetrieveResult

Error 400 (Bad Request)!!1

400. That’s an error.

Your client has issued a malformed or illegal request. That’s all we know.

Eksempel 2

Angiv de kolonner, der skal hentes for hver post.

 <code> // forespørgsel for at vælge data fra serveren. 
$ query = "vælg efternavn, fornavn, konto_id, tildelt_bruger_id fra Kontakter hvor efternavn = 'Valiant';";
// urlencode til som sendt via http.
$ queryParam = urlencode ($ query);
// sessionId fås fra login-resultatet.
$ params = "sessionName = $ sessionId & operation = forespørgsel & forespørgsel = $ queryParam";
// forespørgsel skal være GET Request.
$ httpc-> get ("$ endpointUrl? $ params");
$ respons = $ httpc-> currentResponse ();
// afkode json-kodesvaret fra serveren.
$ jsonResponse = Zend_JSON :: afkode ($ respons ['body']);

// operation var vellykket få token fra svaret.
hvis ($ jsonResponse ['success'] == false)
// håndtere fejlsagen.
die ('forespørgsel mislykkedes:'. $ jsonResponse ['errorMsg']);

// Array of SimplyObjects
$ retrievedObjects = $ jsonResponse ['resultat'];
</code>

Dette returnerer et array, der indeholder arrays, der repræsenterer felterne for hvert objekt, der matchede forespørgslen.

QueryResult

QueryResult er en matrix af SimplyObjects.

SimplyObject

Et kort, der repræsenterer indholdet af et objekt baseret på en mængde. Alle referencefelter er repræsenteret ved hjælp af Id- type. En nøgle kaldet ID af typen Id repræsenterer objektets unikke ID. Dette felt er til stede for ethvert objekt, der hentes fra databasen.

Forespørgselsformat

 <code> vælg * | <kolonneliste> | <count (*)> 
fra <objekt> [hvor <betingelser>]
[rækkefølge efter <kolonneliste>] [grænse [<m>,] <n>];

</code>

Kolonnelisten i rækkefølgen efter klausul kan højst have to kolonnenavne.

Navn Beskrivelse
kolonneliste En kommasepareret liste over feltnavne.
objekt Objektets type navn.
betingede De betingede operationer eller i klausuler eller lignende klausuler adskilt af 'og' eller 'eller' operationer behandles disse fra venstre mod højre. Der er ingen gruppering, det vil sige parentesoperatører.
betingede operatører <,>, <=,> =, =,! =
i klausuler <kolonnenavn> i (<værdiliste>).
som klausuler <kolonnenavn> i (<værdimønster>).
værdiliste En kommasepareret liste over værdier.
m, n Heltalsværdierne til at specificere henholdsvis forskydning og grænse.

Synkronisere

Sync returnerer et SyncResult-objekt, der indeholder detaljerne om ændringerne efter modifiedTime.

URL-format

 <code> Anmodningstype: GET 

http: //Simply_url/webservice.php? operation = synkronisering

& sessionName = [session id]
& modifiedTime = [tidsstempel]
& elementType = [elementType]
</code>

elementType – Dette er en valgfri parameter. Hvis det er angivet, returneres kun ændringerne for dette modul efter den givne tid. Ellers returneres ændringerne til alle brugertilgængelige moduler efter den givne tid.

TimeStamp – En lang gengivelse af antallet af sekunder siden Unix-epoken.

Eksempel 1

Opret en konto, og registrer den i synkroniserings-API'et.

Svaret indeholder den konto, der blev oprettet.

Eksempel 2

Opret en konto og en kontakt, brug kun synkroniserings-API til kontomodulet, kun ændringer til kontomodul returneres.

 <code> // tid, hvorefter alle ændringer på serveren er nødvendige. 
$ stime = tid ();
// Opret nogle data nu, så de fanges af synkroniserings-api-svaret.

// udfyld detaljerne i Accounts.userId fås fra loginResult.
$ accountData = array ('accountname' => 'Simply', 'assign_user_id' => $ userId);
// kode objektet i JSON-format for at kommunikere med serveren.
$ objectJson = Zend_JSON :: kode ($ accountData);
// navn på det modul, som posten skal oprettes til.
$ moduleName = 'Konti';

// sessionId fås fra loginResult.
$ params = array ("sessionName" => $ sessionId, "operation" => 'Opret',
"element" => $ objectJson, "elementType" => $ moduleName);
// Opret skal være POST-anmodning.
$ httpc-> post ("$ endpointUrl", $ params, sandt);
$ respons = $ httpc-> currentResponse ();
// afkode json-kodesvaret fra serveren.
$ jsonResponse = Zend_JSON :: afkode ($ respons ['body']);

// operation var vellykket få token fra svaret.
hvis ($ jsonResponse ['success'] == false)
// håndtere fejlsagen.
die ('create failed:'. $ jsonResponse ['error'] ['errorMsg']);
$ createResult = $ jsonResponse ['resultat'];

// Opret en kontakt.
// udfyld detaljerne i kontakterne. brugerId fås fra loginResult.
$ contactData = array ('efternavn' => 'Valiant', 'tildelt_bruger_id' => $ userId);
// kode objektet i JSON-format for at kommunikere med serveren.
$ objectJson = Zend_JSON :: kode ($ contactData);
// navn på det modul, som posten skal oprettes til.
$ moduleName = 'Kontakter';

// sessionId fås fra loginResult.
$ params = array ("sessionName" => $ sessionId, "operation" => 'Opret',
"element" => $ objectJson, "elementType" => $ moduleName);
// Opret skal være POST-anmodning.
httpc-> post ("$ endpointUrl", $ params, true);
$ respons = $ httpc-> currentResponse ();
// afkode json-kodesvaret fra serveren.
$ jsonResponse = Zend_JSON :: afkode ($ respons ['body']);

// operation var vellykket få token fra svaret.
hvis ($ jsonResponse ['success'] == false)
// håndtere fejlsagen.
die ('create failed:'. $ jsonResponse ['error'] ['errorMsg']);
$ savedObject = $ jsonResponse ['resultat'];
$ id = $ savedObject ['id'];

$ params = "operation = sync & modifiedTime = $ stime & sessionName = $ sessionId";

// sync skal være GET Request.
$ httpc-> get ("$ endpointUrl? $ params");
$ respons = $ httpc-> currentResponse ();
// afkode json-kodesvaret fra serveren.
$ jsonResponse = Zend_JSON :: afkode ($ respons ['body']);

// operation var vellykket få token fra svaret.
hvis ($ jsonResponse ['success'] == false)
// håndtere fejlsagen.
die ('forespørgsel mislykkedes:'. $ jsonResponse ['errorMsg']);
// Array of SimplyObjects
$ retrievedObjects = $ jsonResponse ['resultat'];

</code>

SyncResult

Et objekt, der repræsenterer svaret fra en synkroniseringshandling.

 <code> SyncResult { 
opdateret: [Objekt] // Liste over objekter oprettet eller ændret.
slettet: [Id] // Liste over * Id * for objekter slettet.
lastModifiedTime: Timestamp // tidspunkt for den seneste ændring. som kan bruges i det næste opkald til Sync api for at få alle de seneste ændringer, som klienten ikke har fået.
}
</code>

Log ud

Log ud

Log ud fra webservicesessionen, hvilket efterlader webservicesessionen ugyldig til videre brug.

URL-format

 <code> Anmodningstype: GET 

http: //Simply_url/webservice.php? operation = logout

& sessionName = [session id]
</code>

Eksempel

Udvidelse af Simply webklienten ved hjælp af webservice

Forlæng session

Udvider den aktuelle simpelthen webklientsession til webservicen og returnerer et webservicesession-id. Når du arbejder med Simply Web-klienten, kan brugeren genbruge den aktuelle godkendte session i stedet for at logge ind på Simply igen for at få adgang til webtjenesten.

Bemærk: Hvis brugeren udvider en session, bliver sessionen bundet sammen, så ved at logge ud fra den ene (webtjenesten eller webklienten) logges brugeren også ud af den anden. For at udvidelsessessionens funktion skal fungere, skal cookies være aktiveret i klientbrowseren.

URL-format

 <code> Anmodningstype: POST 

http: //Simply_url/webservice.php? operation = extensionsession

</code>

Eksempel

 <kode> 
</code>

Dette eksempel er skrevet er Javascript, da Extend Session kun er gyldig fra Simply webklienten.

Krav til at køre eksemplet

  • JQUERY-bibliotek – for at udføre ajax http-anmodningen.
  • JSON-bibliotek – json2.js-fil tilgængelig med Simply på json.org.

Eksempel 1

 <kode> 
// operation parametre.
var params = "operation = extensionsession";
// slutpunktet for tjenesterne.
var endPointUrl = "http: //Simply_url/webservice.php";

// expandSession er postanmodning, påkald jquery http postanmodning.
$ .post (endPointUrl, params, funktion (resultat) {
// afkode json-kodesvaret fra serveren.
var jsonResponse = json.parse (resultat);

// operation var vellykket få token fra svaret.
hvis (jsonResponse ['success'] == false)
// håndtere fejlsagen.
die ('login failed:' + jsonResponse ['error'] ['errorMsg']);

// login vellykket uddrag sessionId og userId fra LoginResult, så det kan bruges til yderligere opkald.
var sessionId = jsonResponse ['resultat'] ['sessionName'];
var userId = jsonResponse ['resultat'] ['userId'];
});
</code>

Opdateret den 24/09/2020

Var denne artikel til hjælp?

Relaterede Artikler