由 AI 翻译,尚未经过社区审校。 阅读英文版

博客 · 2023年9月7日 · Steve Simpson · 集成

Salesforce 探戈:理解客户端与服务器之间的 API 之舞。

引言

在这里,你会了解到 Salesforce 中 API 调用里客户端与服务器之间的互动,这是我们在 stevetechart.com 上的集成系列的一个重要方面。

Salesforce 探戈:一场互动之舞

在 API 调用这场复杂的舞蹈中,你必须知道舞步。我接下来要讲解的这张图,展示的就是舞步,也就是客户端与服务器之间的互动。

图示:一次 API 调用中客户端和服务器各自负责的事情:位置、OAuth、协议、契约、载荷、跟踪与调试,以及错误

服务器端的职责

无论充当服务器的是 Salesforce 还是某个外部系统,职责都是一样的。服务器必须可以访问,在特定端口上有一个监听进程(使用 SSL 时通常是 443),在使用 OAuth 时可能还需要一个认证服务器。服务器定义协议,向客户端提供必要的文件,定义载荷,并且可以跟踪传入的载荷以及内部处理的性能。

客户端的职责

客户端必须知道端点,管理会话令牌,并为会话过期导致的错误做好准备。它必须调用正确的协议,正确地序列化数据,并处理返回值。客户端可以跟踪发出的载荷和收到的响应,并处理各种错误,不过捕获和修复这些错误的责任在服务器一方。

Salesforce 作为服务器

图示:外部客户端在通过连接的应用和集成用户认证后可以调用的 Salesforce API(SOAP、REST、Bulk、Apex SOAP 和 REST、Metadata、Tooling、Streaming 以及 Pub/Sub)

当 Salesforce 充当服务器时,OAuth 的设置可能需要一个连接的应用、一个集成简档和一个集成用户。客户端可以是各种各样的外部系统,根据需要通过不同的 API 和协议调用 Salesforce。

Salesforce 作为客户端

图示:Salesforce 作为客户端调用外部服务器:通往 Marketing Cloud、Account Engagement 和 B2C Commerce 的连接器,出站的 Apex SOAP 和 REST 外部调用,External Services,出站消息,使用 OData 的 Salesforce Connect,以及 Heroku Connect

Salesforce 也可以充当客户端,向外部服务器发起出站调用。这个过程可能涉及导入 WSDL 文件、生成 Apex,以及为 SOAP 和 REST 服务器设置命名凭据。不同的出站机制需要不同的配置,每一种都遵循前面描述的客户端-服务器协议。

结论

理解 Salesforce API 调用中客户端与服务器互动的舞步,对于高效、有效地使用 API 至关重要。我们深入探讨了双方的职责,并研究了外部客户端以及 Salesforce 扮演不同角色的各种场景。

敬请关注

想获得更多见解和技巧,请继续关注 www.SteveTechArc.com 和 YouTube 频道 @SteveTechArc (opens in a new tab)。订阅,加深你对 Salesforce 以及如何将它与其他系统集成的理解。

与架构师同行以及正走在架构师之路上的人分享集成知识,一起改变世界!

深入品尝这场技术自助餐,继续尽情享用技术吧。Stay nerdy!

转录借助了 AI

STA 1.3