如何从外部Web表单调用Salesforce REST API

时间:2019-05-13 23:42:02

标签: rest salesforce

我有点困惑。要求是我们需要在Salesforce(Apex类)中创建一个具有POST方法的REST API。现在,我已经分两步使用POSTMAN工具对其进行了测试:

首先使用用户名,密码,client_id,client_secret(来自Salesforce中已连接的应用程序),grant_type进行POST请求,以接收访问令牌。

然后,我使用以前收到的访问令牌和正文在POSTMAN中发出另一个POST请求,以在Salesforce中创建销售线索。

但是,我从各种不同的Web表单中调用Salesforce中的REST API。因此,一旦有人填写了网络表单,在后端,它将在Salesforce中调用此REST API并提交潜在客户请求。

我想知道怎么回事,因为我们不能使用POSTMAN。

谢谢

1 个答案:

答案 0 :(得分:0)

这些“各种不同的Web表单”必须像Postman一样向Salesforce发送请求。您需要两个POST调用(一个用于登录,一个用于调用您创建的服务)。它将完全不受您的控制,您提供了SF代码并证明了它的有效性,现在是由这些网站开发人员来选择它。

您到底是什么问题?有成千上万的库可以通过Java,Python,.NET,PHP连接到SF ...或者他们可以手工制作这些HTTP消息,例如Google的“ PHP HTTP POST”之类的东西。

取决于他们将有多少时间:

  • 缓存会话ID(以便他们不会每次都调用登录名),尝试重用它,仅在会话ID为空白/返回“会话过期或无效”错误时再次调用登录名
  • 尝试以某种方式对其进行批处理(他们是否需要尽快将这些销售线索保存到SF或说每小时一次就可以了?您如何编写服务,接受1条销售线索或记录列表?
  • 在将凭证存储到SF时要很聪明(某种安全的方式,而不是硬编码)。理想情况下,可以轻松地将集成用于沙箱或生产,只需更改一个配置文件或环境变量或类似的东西