我使用了相同的策略来免除正在使用的订阅密钥
rate-limit
策略。
出于测试目的,我接听了 10 个电话。
<policies>
<inbound>
<base />
<choose>
<when condition="@(context.Subscription.Name=="test")" />
<when condition="@(context.Subscription.Name=="demo")" />
<otherwise>
<rate-limit calls="10" renewal-period="300" remaining-calls-variable-name="remainingCallsPerSubscription" />
</otherwise>
</choose>
</inbound>
<backend>
<base />
</backend>
<outbound>
<base />
</outbound>
<on-error>
<base />
</on-error>
</policies>
测试时,您需要传递订阅密钥名称为Ocp-Apim-Subscription-Key,该值将是您的订阅密钥的值,否则它将获取
context.Subscription.Name
的值作为Built-in all-access subscription
默认情况下。
当
context.Subscription.Name
的值为 false 时,我得到如下所示的预期响应。
为了获得预期的响应,请确保您没有在全局或 API 级别定义任何其他策略。