azure - 使用 Azure 逻辑应用从 Salesforce 获取记录
问题描述
我正在尝试使用 Azure Logic Apps 从具有大量记录的 Salesforce 对象之一读取数据。Salesforce 连接器获取记录并将分页链接返回为@odata.nextLink。但是当我尝试使用 JSON 解析器来读取它的值时,它是 null。
我试图在浏览器中访问下一个链接,但它需要身份验证。我们在这里通过什么认证?
我想使用 until 操作迭代直到获得下一个链接。那么如何检查 until 循环的条件呢?
解决方案
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
推荐阅读
- python - 如何使用正则表达式仅匹配位于浮点数之后的字母并替换另一个字符串
- reactjs - 从一个 ID 页面链接到另一个 ID 页面
- java - Java Socketio 不发射
- c# - 如何用 AND、OR 连接两个表达式
- reactjs - 有没有办法在不做 useRef(socketRef) 的情况下写这个
- vhdl - 我在 TO_INTEGER 部分出现错误,任何人都有任何想法可以替换
- jquery - 表单提交时多选的jQuery验证
- localization - 使用 ToString("C") 时,Blazor 显示 ¤ 而不是 $
- java - DrawSurface 或 SurfaceView .xml 文件
- css - 在css中设置某些元素的宽度问题