POST metode
POST er en http-metode, som tilføjer enkelte/flere poster ad gangen til Salesforce. Vi kan indsætte posterne med URI gennem den tilpassede Apex REST API eller direkte fra URI.
Tilpasset hvileressource i Apex
For at skrive REST i Apex skal vi bruge nogle annoteringer, som får adgang til REST API i din Apex-klasse.
@HttpPost-anmærkning
Denne metode kaldes, når HTTP POST sendes, som gør det muligt at eksponere Apex-metoden som en REST-ressource. Derefter opretter det en ny ressource.
Syntaks: @httpPost
Eksempel:
Skriv 'RestApi_Post_Record.apxc' Apex-klassen, der involverer REST 'POST'-metoden for at indsætte status-, prioritets- og emnefelter i Salesforce 'Case'-objektet.
- Opret Post_Method med tre parametre: status, prioritet og emne for strengtype.
- Opret et 'Case'-objekt ved at videregive disse parametre.
- Brug indsæt DML til at indsætte posten i Salesforce 'Case'-objektet.
global klasse RestApi_Post_Record{
// REST - Postmetode
@httpPost
global statisk Case Post_Method(strengprioritet, strengstatus, strengemne){
Sag case_obj= ny Sag(Prioritet=prioritet, Status = status, Emne=emne);
// Indsæt DML
indsæt case_obj;
returner case_obj;
}
}
URI og resultat:
Gå til Workbench og naviger til REST Explorer. Angiv følgende URI og kør den:
/services/apexrest/v56.0/RestApi_Post_Record/
Angiv dataene i anmodningsteksten:
{'Prioritet': 'Høj',
'Status': 'Ny',
'Subject': 'Mobilproblem'
}
Åbn posten i Salesforce (naviger til objektet 'Case' fra App Launcher).
Indsæt en enkelt post direkte fra URI
Naviger til REST Explorer under fanen 'Hjælpeprogrammer', og angiv følgende URI og angiv denne post under Request Body:
/services/data/v56.0/sobjects/Case/Anmodningstekst:
{'Prioritet': 'Medium',
'Status': 'Ny',
'Subject': 'Microsoft-teams - kommer ikke'
}
Gå til fanen Salesforce 'Sager', og se posten.
Indsæt flere poster direkte fra URI
Hvis du vil indsætte flere poster ad gangen, skal vi angive URI'en som følger: /services/data/v56.0/composite/tree/sObject
Anmodningsorganet opbevarer optegnelserne i følgende format:
'records' :[{'attributes' : {'type' : 'Objekt', 'referenceId' : 'reference1'},
felt:værdi,
...
...
},{
'attributes' : {'type' : 'Objekt', 'referenceId' : 'reference1'},
felt:værdi,
...
...
}]
}
Lad os indsætte to poster i Salesforce 'Case'-objektet.
URI: /services/data/v56.0/composite/tree/Case/Anmodningstekst:
{'records' :[{
'attributes' : {'type' : 'Sag', 'referenceId' : 'reference1'},
'Prioritet': 'Høj',
'Status': 'Ny',
'Subject':'Designproblem med mekanisk rotor',
'Type': 'Elektrisk'
},{
'attributes' : {'type' : 'Sag', 'referenceId' : 'reference2'},
'Prioritet': 'Lav',
'Status': 'Ny',
'Subject':'Starter generator efter elektrisk fejl' ,
'Type': 'Elektrisk'
}]
}
To poster indsættes i Salesforce med sagsnummer 00001038 og 00001039.
PUT metode
Som vi tidligere har diskuteret, er PUT en http-metode, som bruges til at oprette/opdatere posterne. I denne vejledning bruger vi denne metode til at oprette en ny Salesforce-post ved hjælp af den tilpassede REST API.
@httpPut : Denne metode kaldes, når HTTP PUT sendes, hvilket gør det muligt for Apex-metoden at blive eksponeret som en REST-ressource. Derefter opretter den en ny ressource eller opdaterer den eksisterende ressource.
Syntaks: @httpPutEksempel:
Skriv 'RestApi_Put_Record.apxc' Apex-klassen, der involverer REST 'PUT'-metoden for at indsætte status-, prioritets- og beskrivelsesfelterne i Salesforce 'Case'-objektet.
@RestResource(urlMapping='/v56.0/RestApi_Put_Record/')global klasse RestApi_Put_Record{
// REST - Put metode
@httpPut
global statisk Case Put_Method(strengprioritet, strengstatus, strengemne){
Sag case_obj= ny Sag(Prioritet=prioritet, Status = status, Emne=emne);
// Indsæt DML
indsæt case_obj;
returner case_obj;
}
}
URI og resultat:
Gå til Workbench og naviger til REST Explorer. Angiv følgende URI og kør den:
/services/apexrest/v56.0/RestApi_Put_Record/Angiv dataene i anmodningsteksten:
{'Prioritet': 'Høj',
'Status':'Lukket',
'Subject':'Vejledning til grøntsagskværn nødvendig'
}
Åbn posten i Salesforce (naviger til objektet 'Case' fra App Launcher).
Konklusion
Nu er du i stand til at indsætte posterne i Salesforce ved hjælp af http PUT- og POST-metoderne. Vi lærte, hvordan man indsætter posterne direkte i Workbench og bruger den tilpassede REST API gennem Apex-klassen. Salesforce 'Case'-objektet bruges i denne vejledning som et eksempel. Den faktiske forskel mellem PUT og POST er, at POST bruges til at indsætte dataene, mens PUT bruges til at indsætte/opdatere dataene. @httpPut-annotationen bruges til PUT-metoden, og @httpPost-annoteringen bruges til POST-metoden.