Apex-webbtjänster: byggstenar för webbtrollkarlar
Introduktion:
I det här blogginlägget går jag igenom hur man bygger anpassade Apex-webbtjänster i Salesforce. De behövs när en extern process ska läsa eller skriva data i Salesforce och standard-REST-API:t inte räcker till. Vi går igenom fem exempel med gradvis ökande komplexitet, från standardfrågor till uppdateringar.

Översikt över anpassade webbtjänster
Vi tittar på fem exempel på anpassade webbtjänster:
GET med en vanlig SObject-lista: Hämta data med en vanlig SObject-lista.
Wrapper med JSON-svar: Förbättra GET-anropet genom att paketera det i ett JSON-svar.
Lägga till parametrar: Inför parametrar i GET-anropet för att hämta mer specifika data.
POST för att infoga: Bygg ett POST-anrop som infogar data.
Returnera felmeddelanden: Hantera och returnera felmeddelanden på rätt sätt.
Att bygga anpassade webbtjänster
Exempel 1: GET med en vanlig SObject-lista
I det här exemplet definierar vi en REST-resurs med en anpassad URI och anger HTTP-verbet (GET). Klassen ska deklareras som global, och vi returnerar en lista med vanliga konton med en enkel fråga.

Exempel 2: wrapper med JSON-svar
För att styra vilka data som skickas tillbaka till klienten använder vi ett svarsobjekt. I stället för att returnera en lista med SObjects returnerar vi en lista med anpassade svarsobjekt, en lättviktig representation av en kund med bara ID och namn.

Exempel 3: lägga till parametrar
Parametrar behövs när du vill ha data för en viss kund. Genom att läsa RestContext.params kan du hämta kundens ID och använda det i SOQL-frågans WHERE-sats för att filtrera data.

Exempel 4: POST för att infoga
När du behöver skriva data används en POST-metod. I det här exemplet skapar vi ett svarsobjekt och ett förfrågningsobjekt. Förfrågningsobjektet tar emot en kund med ett namn, och vi använder JSON-serialiseraren för att deserialisera förfrågan till en viss klass. När vi har skapat och infogat ett nytt konto returneras en lyckad status.

Exempel 5: returnera felmeddelanden
Det här exemplet liknar exempel 4 men har felhantering. Om ett undantag uppstår fångas felet, läggs till i en lista, och statuskoden sätts till 500 (eller vilket nummer du vill).

Slutsats
Med de här exemplen har vi visat de grundläggande byggstenarna för anpassade Apex-webbtjänster i Salesforce. Vi började med ett enkelt GET-anrop och ökade komplexiteten steg för steg med parametrar, POST-anrop och felhantering.
Håll utkik
Tack för att du läste, jag ser fram emot att dela fler kunskapsspäckade äventyr med dig snart! Håll utkik här på www.SteveTechArc.com och på YouTube-kanalen @SteveTechArc (opens in a new tab). Prenumerera och fördjupa din förståelse av Salesforce och hur du kan integrera det med andra system.
Vi hjälper till att förändra världen genom att dela integrationskunskap med andra arkitekter och med dem som är på väg att bli arkitekter!
STA 1.8