本篇参考:
Salesforce 集成篇零基础学习(一)Connected App
salesforce 零基础学习(三十三)通过REST方式访问外部数据以及JAVA通过rest方式访问salesforce
我们在项目中也经常遇见下游系统去和我们进行交互的情况,针对 salesforce可以提供 标准 rest api以及自定义的rest接口。那么下游系统如何进行连通性测试或者我们如何来验证自己的接口或者标准的配置是正确的呢,答案是我们可以使用 workbench或者 postman来验证,推荐后者,也就是今天我们要讲的内容。使用 postman去模拟联调以前,我们需要先在我们系统配置 connected app,如果不懂得小伙伴,可以参考上方的文档。
Pre:创建 Connected App
connectedApp创建完成以后,接下来就是 postman的内容。
一. Postman的安装和配置
1. 访问https://www.postman.com/downloads/ 来下载 Postman并且安装。
2. 创建一个免费账号
当创建完成以后授权登录,则postman可以进行使用了。
3. 设置安全性,自己可见或者team可用。
4. 创建 collection
5. 创建 folder(optional)
二. Postman模拟执行rest api的使用
1. 获取access token: 调用rest api以前,我们首先需要获取 access token。篇中demo使用 username password flow来获取,其他的oauth flow感兴趣自行查看。
下方需要配置一些参数,参数描述可以查看上方文档。
2. 调用标准 rest api:我们在demo中以create进行举例 https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/dome_sobject_create.htm
首先我们在系统中获取到我们的domain信息
配置一下authorization,将上个步骤中返回的 access token配置在下图位置, Type选择 Bearer
配置我们的 request body,demo中以JSON形式。
3. 调用自定义rest api:下方demo是自定义rest api用来通过account id来获取指定的记录。
@RestResource(urlMapping='/account/*') global with sharing class AccountCreationService { @HttpGet global static Account doGet() { RestRequest req = RestContext.request; RestResponse res = RestContext.response; String accountId = req.requestURI.substring(req.requestURI.lastIndexOf('/')+1); Account result = [SELECT Id, Name, Phone, Website FROM Account WHERE Id = :accountId]; return result; } }
我们Authorization和上面的demo配置方式相同,自定义api的URL调用方式为 /services/apexrest/[xxx],其中xxx为类中声明的urlMapping信息。
总结:篇中介绍了 postman调用标准 rest api以及自定义rest api的前置条件,准备内容和调用方式。篇中有错误地方欢迎指出,有不懂欢迎留言。