Présentation de l’intégration Apex
Objectifs de formation
Après avoir terminé ce module, vous pourrez :
- Décrire les différences entre les appels de service Web et les appels HTTP.
- Autoriser un site externe via les paramètres des sites distants.
Émettre des appels vers des services externes depuis Apex
Un appel Apex vous permet d’intégrer étroitement votre code Apex à un service externe. Dans le cadre d’un appel, cet appel est émis vers un service Web externe ou une requête HTTP est envoyée depuis le code Apex, puis la réponse est reçue.
Deux types d’appel Apex existent.
- Les appels de service Web émis vers des services Web SOAP utilisent du XML et nécessitent généralement un document WSDL pour la génération du code.
- Les appels HTTP émis vers des services reposent généralement sur du REST avec JSON.
Ces deux types d’appel sont similaires dans la mesure où ils envoient tous deux une requête à un service puis reçoivent une réponse. Mais tandis que les appels WSDL s’appliquent aux services Web SOAP, les appels HTTP peuvent être utilisés avec un service HTTP, qu’il soit SOAP ou REST.
Donc vous vous demandez probablement maintenant : « Lequel devrais-je utiliser ? » Utilisez un service HTTP dès que cela est possible. Il est généralement plus facile d’interagir avec ces services qui exigent beaucoup moins de code et utilisent du JSON facile à lire. Tous ceux qui sont « dans le coup » sont passés aux services REST ces dernières années, mais cela ne veut pas dire pour autant que les services Web SOAP sont mauvais. Ils ont toujours été là (depuis l’avènement d’Internet) et sont couramment utilisés pour les applications professionnelles. Et ils ne sont pas près de disparaître. Vous utiliserez probablement surtout le service SOAP lorsque vous intégrerez votre contenu à des applications héritées ou pour les transactions exigeant un format d’échange formel ou des opérations à état. Dans ce module, nous aborderons le service SOAP mais passerons la plupart du temps sur le service REST.
Vidéo de démonstration Trail Together
Vous souhaitez être guidé pas à pas par un expert pendant que vous travaillez sur cette étape ? Regardez cette vidéo qui fait partie de la série Trail Together sur Trailhead Live. Vous trouverez un lien vers la session complète dans la section Ressources.
Autoriser les adresses de points de terminaison
Chez Salesforce, nous adorons la sécurité ! Donc, chaque fois que vous émettez un appel vers un site externe, nous voulons nous assurer qu’il est autorisé. Nous ne pouvons pas disposer d’un code appelant bon gré mal gré n’importe quel point de terminaison sans approbation préalable. Avant de commencer à travailler avec les appels, mettez à jour la liste de sites approuvés de votre organisation sur la page Paramètres des sites distants.
Nous utiliserons les points de terminaison suivants dans ce module, alors allez-y, ajoutez-les dès maintenant. Si vous avez oublié d’ajouter un point de terminaison, vous pouvez me faire confiance, vous obtiendrez un rappel lorsque vous essaierez d’exécuter votre code. Nous créerons des appels pour les sites suivants.
- https://th-apex-http-callout.herokuapp.com
- https://th-apex-soap-service.herokuapp.com
Autorisez ces deux URL de point de terminaison en suivant les étapes ci-dessous :
- Dans Setup (Configuration), saisissez
Remote Site Settings
(Paramètres de site distant) dans la zone Quick Find (Recherche rapide), puis cliquez sur Remote Site Settings (Paramètres de site distant). - Cliquez sur Nouveau site distant.
- Saisissez
animals_http
dans Remote site name (Nom du site distant). - Pour Remote site URL (URL du site distant), saisissez
https://th-apex-http-callout.herokuapp.com
.
Cette URL autorise tous les sous-dossiers pour le point de terminaison, comme https://th-apex-http-callout.herokuapp.com/chemin1 et https://th-apex-http-callout.herokuapp.com/chemin2. - Pour Description, saisissez
Trailhead animal service:HTTP
(Service animalier Trailhead:HTTP). - Cliquez sur Enregistrer et nouveau.
- Saisissez
animals_soap
comme nom du deuxième site distant. - Saisissez
https://th-apex-soap-service.herokuapp.com
dans Remote site URL (URL de site distant). - Pour Description, saisissez
Trailhead animal service:SOAP
(Service animalier Trailhead:SOAP). - Cliquez sur Enregistrer.
Ressources
- AWS : Quelle est la différence entre SOAP et REST ?
- Trailhead Live : Trail Together - Services d’intégration Apex