Pristatome Workbench
Workbench nėra oficialus Salesforce.com produktas. Tačiau mes naudosime „Salesforce“ duomenų apdorojimo operacijoms, pvz., pasirinkimui, įterpimui, įtraukimui, atnaujinimui ir ištrynimui atlikti, tiesiog prisijungę prie „Salesforce“ paskyros (palaikoma ir „Sandbox“, ir „Production“). Tai yra oficiali svetainė, skirta prisijungti prie „Workbench“ su „Salesforce“: https://workbench.developerforce.com/login.php .
Nuo šiol laikykite tik esamą API versiją ir spustelėkite mygtuką „Prisijungti naudojant Salesforce“.
Mums reikia REST Explorer. Eikite į skirtuką „Komunalinės paslaugos“ ir spustelėkite „REST Explorer“.
Pamatysite vartotojo sąsają, kaip ir toliau esančioje iliustracijoje. Turime pasirinkti GET, kad gautume įrašus iš „Salesforce“ visame šiame vadove. Turime nurodyti URI, kuris gauna „Salesforce“ įrašus, ir spustelėkite mygtuką „Vykdyti“.
Gaukite konkretų įrašą naudodami „Salesforce“ ID
Remdamiesi „Salesforce“ įrašo ID, galime gauti visą „Salesforce“ įrašą. Turime nustatyti URI taip:
/ paslaugos / duomenis / v56.0 / subjektai / objectAPINname / idČia „objectAPIName“ yra „Salesforce“ standartinis / tinkintas objektas, o „id“ nurodo „Salesforce“ ID.
Grąžinti:
Gausite HTTP/1.1 200 OK neapdorotą atsakymą JSON formatu, kaip nurodyta toliau:
{'atributai' : {
'tipas' :
'url' :
} ,
'laukas' : vertė,
...
}
Pavyzdys:
Šiame pavyzdyje gauname 5005i00000W4GM5AAN bylos įrašą.
TIPAS: / paslaugos / duomenis / v56.0 / subjektai / Byla / 5005i00000W4GM5AANRezultatas:
Matome, kad atsakymas generuojamas JSON formatu.
Rezultatus taip pat galime peržiūrėti tiesiogiai iš čia:
Gaukite kelis įrašus naudodami užklausą
Atėjo laikas gauti kelis įrašus iš „Salesforce“ objekto. Anksčiau objektus nurodydavome URI. Čia turime nurodyti užklausą, kuri užklausą paima kaip parametrą.
URI: paslaugos / duomenis / v57.0 / užklausą / ? q =PASIRINKITE+laukas1,laukas2,....+iš+ObjectAPINnameNorėdami sujungti raktinius žodžius užklausoje, turime naudoti „+“ kaip skirtuką. Jis grąžina bendrą dydį ir įrašo į aplanką. Kiekvieno įrašo aplanko pavadinimas yra [1 punktas],… [punktas n].
1 pavyzdys:
Grąžinkime įrašus, kuriuose yra CaseNumber, būsena, prioritetas ir aprašas iš objekto Case.
Rezultatas:
Spustelėję „Išplėsti viską“, pamatysite visus įrašus su atributais ir reikšmėmis.
Leiskite parodyti pirmąjį ir paskutinį įrašą:
2 pavyzdys:
Grąžinkime tik tris įrašus su tais pačiais laukais, kaip matyti pirmame pavyzdyje.
Rezultatas:
Pirmieji du įrašai, esantys objekte Case, grąžinami.
3 pavyzdys:
Užklausoje, parenkančioje įrašus, kurių būsena „Naujas“, nurodykime sąlygą WHERE.
Rezultatas:
Yra penki įrašai, kurių būsena yra „Naujas“.
Pasirinktinis poilsio šaltinis „Apex“.
Galime naudoti „Salesforce Apex“, kuri grąžina įrašą iš „Salesforce“ objekto, nurodydami URI „Workbench“. Norėdami parašyti REST „Apex“, turime naudoti kai kuriuos komentarus, kurie pasiekia jūsų „Apex“ klasės REST API. Įsitikinkite, kad mūsų Apex klasė turi būti visuotinai statinė.
1. @RestResource anotacija
Ši anotacija naudojama norint įjungti, kuri „Apex“ klasę atskleidžia kaip REST šaltinį. UrlMapping naudojamas kaip parametras, naudojamas URI rasti Workbench.
Sintaksė: @RestResource(urlMapping='/Version/ApexClassName/')
„Versija“ yra jūsų „Workbench“ versija, pvz., V56.0, o „ApexClassName“ yra jūsų „Apex“ klasė, kurioje naudojami „Rest“ API ištekliai.
2. @HttpGet anotacija
Ši anotacija naudojama norint įjungti, kuri „Apex“ klasę atskleidžia kaip REST šaltinį. Jis iškviečiamas, kai serveriui siunčiama HTTP GET užklausa ir grąžinamas nurodytas šaltinis.
Sintaksė: @httpGet
1 pavyzdys: vienas parametras
Parašykite 'RestApi_Get_Record.apxc' Apex klasę, kuri apima 'Rest Get' metodą, kad grąžintumėte ID, CaseNumber, būseną, prioritetą ir kilmę iš atvejo objekto.
@ RestResource ( urlMapping = „/v56.0/RestApi_Get_Record/“ )pasaulinė klasė RestApi_Get_Record {
// REST – gaukite metodą
@ httpGauti
global static Case getCaseDetails ( ) {
// Sukurti objektą dėl Bylos objektas
Case_obj = naujas atvejis ( ) ;
Žemėlapis < Styga, styga > paramsMap = RestContext.request.params;
// Gauti atvejis id
String caseid = paramsMap.get ( 'input_id' ) ;
// SOQL užklausa, kuri bus grąžinti id ,Bylos numeris,Būsena,Prioritetas,Kilmė iš bylos iš
// bylos objektas
case_obj = [ pasirinkite id ,Atvejo numeris,Būsena,Prioritetas,Kilmė iš atvejo, kur Id =:caseid ] ;
grąžinti case_obj;
}
}
URI ir rezultatas:
Eikite į Workbench ir eikite į REST Explorer. Perduokite ID kaip 5002t00000Pdzr2AAB į input_id parametrą.
/ paslaugos / viršūnė / v56.0 / RestApi_Get_Record / ? įvesties_id =5002t00000Pdzr2AAB
Paaiškinimas:
- Sukurkite objektą „case_obj“ atvejui.
- Gaukite parametrus naudodami RestContext.request.params.
- Gaukite atvejo ID iš parametro input_id ir išsaugokite jį kintamajame caseid.
- Parašykite SOQL užklausą, kuri grąžina ID, CaseNumber, būseną, prioritetą, kilmę iš atvejo iš „caseid“ atvejo objekto Case.
- Grąžinkite atvejo objektą (case_obj).
2 pavyzdys: keli parametrai
Naudokite ankstesnę „Apex“ klasę ir gaukite „Status“ parametrą kartu su ID. Nurodykite šiuos du parametrus „Workbench“ URI, atskirtą „&“.
@ RestResource ( urlMapping = „/v56.0/RestApi_Get_Record/“ )pasaulinė klasė RestApi_Get_Record {
// REST – gaukite metodą
@ httpGauti
global static Case getCaseDetails ( ) {
// Sukurti objektą dėl Bylos objektas
Case_obj = naujas atvejis ( ) ;
Žemėlapis < Styga, styga > id_param = RestContext.request.params;
Žemėlapis < Styga, styga > status_param = RestContext.request.params;
// Gaukite id_param į case_id
Eilutė case_id = id_param.get ( 'input_id' ) ;
// Įveskite status_param į case_status
Eilutė case_status =status_param.get ( 'status' ) ;
case_obj = [ pasirinkite id ,CaseNumber,Būsena,Prioritetas,Kilmė iš atvejo, kur Id =:atvejo_id ir Būsena =:atvejo_būsena ] ;
grąžinti case_obj;
}
}
URI ir rezultatas:
Eikite į Workbench ir eikite į REST Explorer. URI nurodykite input_id kaip 5002t00000PdzqwAAB ir būseną kaip „Uždaryta“.
/ paslaugos / viršūnė / v56.0 / RestApi_Get_Record / ? įvesties_id =5002t00000PdzqwAAB & statusą =Uždaryta
Išvada
Aptarėme tris Salesforce įrašų gavimo per Salesforce REST API, naudojant Workbench, scenarijus. Norėdami grąžinti konkretų įrašą, turime nurodyti sObject, perduodant ID kaip parametrą URI. Panašiai perduodame užklausos parametrus, kad gautume konkrečius įrašus. Naudodami „Apex“, galime sukurti savo „Gauti“ metodą, kad pasirinktume įrašą pagal vieną / kelis parametrus.