如何根据服务器响应为特定 api 操作配置速率限制?

How to configure rate limit for a specific api action based on server response?

有没有办法在 Azure API 上的 特定 API 操作上配置速率限制规则管理。如果最终用户在 X 次尝试后收到来自后端的特定响应,则所需的解决方案是 return HTTP 429(请求过多)。

在 Azure APIM 中,可以根据密钥或订阅进行速率限制。因此,基于后端响应多次的速率限制是不可能的。

跟踪调用之间的响应状态也不是一个好习惯。

您可以使用重试策略来验证后端服务的响应。 https://docs.microsoft.com/en-us/azure/api-management/api-management-advanced-policies#Retry。您可以使用重试结果发回 429 响应。

查看按键速率限制策略的增量条件:https://docs.microsoft.com/en-us/azure/api-management/api-management-access-restriction-policies#LimitCallRateByKey