首页 > 解决方案 > 使用 Azure 逻辑应用从 Salesforce 获取记录

问题描述

我正在尝试使用 Azure Logic Apps 从具有大量记录的 Salesforce 对象之一读取数据。Salesforce 连接器获取记录并将分页链接返回为@odata.nextLink。但是当我尝试使用 JSON 解析器来读取它的值时,它是 null。

我试图在浏览器中访问下一个链接,但它需要身份验证。我们在这里通过什么认证?

我想使用 until 操作迭代直到获得下一个链接。那么如何检查 until 循环的条件呢?

标签: azuresalesforceodataazure-logic-apps

解决方案


nextLink看起来不像是核心 Salesforce 的东西,它可能是 OData 连接器为您预处理结果。您必须查阅连接器的文档(如果有)。

Salesforce 的 REST API 将返回字段,nextRecordsUrl如果有下一页结果,您将在循环中调用该字段,直到该字段消失。您可以像登录后可用的任何其他 REST API 资源一样调用它,方法是传递Authorization: Bearer <sessionId also known as accessToken here>. 再次 - 可能连接器从您那里抽象出来。不要认为您可以在浏览器中发送这样的标头,您需要 curl、Postman、SoapUI 或类似的 http 客户端。

如果您没有得到更好的答案并且文档稀缺 - 考虑使用原始 REST API。或者 Azure 数据工厂有一个几乎不错的 Salesforce 连接器?

https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/dome_query.htm


推荐阅读