在 apigee 的最佳实践文档中,我发现了以下句子:
不要对同一组织中的其他 API 代理进行 ServiceCallouts,包括递归调用回同一 API 代理。
有什么解释为什么我不应该在 API 代理中使用递归标注?我只发现了一个关于性能的论点。
我的情况:我们检查是否有令牌(如果没有 - 创建一个新令牌),然后创建一个对 URL 的服务调用并接收正确的 http 代码或 400 http 代码(如果我们的令牌过期,则会发生这种情况,但是在那里)。用户不应该知道他的令牌已经过期。我们无法检查他的令牌是否在服务调用 URL 之前过期。所以我们只知道是否已经有令牌。如果没有令牌并且令牌将由我们生成,则服务调用始终使用 200 http 状态代码。但是如果令牌无效,我们需要再次发送请求作为服务调用。最好的方法是递归 - 这样在响应中我们可以删除现有但已过期的令牌并重新开始整个过程。
我希望它可以以某种方式理解...