Salesforce REST API 查询 - URL 限制
Salesforce REST API query - URL limit
我目前正在使用 Salesforce REST API 通过 GET 请求中的查询参数传递查询来从 Salesforce 获取记录。但是,当 url 查询参数字符数超过 16000
时,此特定实现 returns 出错。有没有办法让它在 url?
中接受大约 1,00,000 个字符
很遗憾,您似乎刚刚达到 Salesforce 施加的限制:
SOSL search query strings
Maximum length of SearchQuery string
If the SearchQuery
string is longer than 10,000 characters, no result rows are returned. If SearchQuery
is longer than 4,000 characters, any logical operators are removed. For example, the AND
operator in a statement with a SearchQuery
that’s 4,001 characters will default to the OR
operator, which could return more results than expected.
我完全不了解 Salesforce API,但我有两个建议(特别是如果没有其他人回答您的问题):
- 调查 Salesforce REST API 中基于
POST
/PUT
的查询选项。我想我读了一些关于能够在 JSON 中格式化查询然后提交的内容(但我可能是错的)。 编辑:我又看了一点,但我没有立即看到任何表明有这种可能性的东西。
- 使用不那么具体因而更小的查询。如果您从您可以控制的应用程序(例如,shell 脚本、Java 应用程序等)进行此 URL 调用,则在该级别处理数据并 return 该数据的较小子集。如果您担心一次取回太多数据,那应该不是问题。听起来他们限制了每个请求发回的数量,并在每个响应结束时发送 URL 到下一页结果。
我目前正在使用 Salesforce REST API 通过 GET 请求中的查询参数传递查询来从 Salesforce 获取记录。但是,当 url 查询参数字符数超过 16000
时,此特定实现 returns 出错。有没有办法让它在 url?
很遗憾,您似乎刚刚达到 Salesforce 施加的限制:
SOSL search query strings
Maximum length of SearchQuery string
If the
SearchQuery
string is longer than 10,000 characters, no result rows are returned. IfSearchQuery
is longer than 4,000 characters, any logical operators are removed. For example, theAND
operator in a statement with aSearchQuery
that’s 4,001 characters will default to theOR
operator, which could return more results than expected.
我完全不了解 Salesforce API,但我有两个建议(特别是如果没有其他人回答您的问题):
- 调查 Salesforce REST API 中基于
POST
/PUT
的查询选项。我想我读了一些关于能够在 JSON 中格式化查询然后提交的内容(但我可能是错的)。 编辑:我又看了一点,但我没有立即看到任何表明有这种可能性的东西。 - 使用不那么具体因而更小的查询。如果您从您可以控制的应用程序(例如,shell 脚本、Java 应用程序等)进行此 URL 调用,则在该级别处理数据并 return 该数据的较小子集。如果您担心一次取回太多数据,那应该不是问题。听起来他们限制了每个请求发回的数量,并在每个响应结束时发送 URL 到下一页结果。