我正在调用Remedyforce REST API'Knowledgesearch'来搜索Remedyforce知识库。 API链接-here
一周以来,我在调用此API时发现一种奇怪的行为。我正在使用Postman调用REST API。
当我通过问题:“我能买什么车?”时,它将返回有效结果列表。
但是,当我在不带'?'的情况下传递相同的问题时-“我可以拥有哪辆车”,我收到一条消息'System.LimitException:BMCServiceDesk:SOQL查询过多:101'
另一个这样的例子是当我问'我想去月球。您能帮忙吗?”,我收到相同的错误消息:“ System.LimitException:BMCServiceDesk:SOQL查询过多:101”
POST正文:
{ "SearchString": "what car can I have" }
OR
{ "SearchString": "I want to go to the moon. could you please help?" }
完整的JSON响应是:
[
{
"errorCode": "APEX_ERROR",
"message": "System.LimitException: BMCServiceDesk:Too many SOQL queries: 101\n\n(BMCServiceDesk)\n\n\n\n\n"
}
]
此行为一直是一致的。对于某些查询,我始终会收到这种响应,对于其余查询,我会得到响应的结果列表。
我浏览了Remedyforce的以下页面,描述了此异常:
https://help.salesforce.com/articleView?id=000181404&language=en_US&type=1 https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_gov_limits.htm
它谈到了每个事务的SOQL查询限制,但是在我的情况下,我看不到任何限制。对于某些查询,我每次都会得到此响应,而对于其他查询,我没有。
另一种奇怪的行为是,当我尝试以下问题时:“我可以拥有哪辆车?”从BMC Remedyforce UI中获取任何结果。当我使用API运行相同的代码时,会得到很多结果。
还有其他人遇到这个问题吗?