框架
版本
Debouncer API 参考
Throttler API 参考
速率限制器 API 参考
队列 API 参考
批处理器 API 参考
批处理器示例

RateLimiterOptions

接口:RateLimiterOptions<TFn>

定义于:rate-limiter.ts:7

用于配置速率限制函数的选项

类型参数

TFn extends AnyFunction

属性

enabled?

ts
optional enabled: boolean | (rateLimiter) => boolean;
optional enabled: boolean | (rateLimiter) => boolean;

定义于:rate-limiter.ts:12

速率限制器是否启用。禁用时,maybeExecute 不会触发任何执行。 默认为 true。


limit

ts
limit: number | (rateLimiter) => number;
limit: number | (rateLimiter) => number;

定义于:rate-limiter.ts:17

时间窗口内允许的最大执行次数。 可以是数字或接收速率限制器实例并返回数字的回调函数。


onExecute()?

ts
optional onExecute: (rateLimiter) => void;
optional onExecute: (rateLimiter) => void;

定义于:rate-limiter.ts:21

函数执行后调用的回调函数

参数

rateLimiter

RateLimiter<TFn>

返回

void


onReject()?

ts
optional onReject: (rateLimiter) => void;
optional onReject: (rateLimiter) => void;

定义于:rate-limiter.ts:25

可选的回调函数,在由于速率限制而拒绝执行时调用

参数

rateLimiter

RateLimiter<TFn>

返回

void


window

ts
window: number | (rateLimiter) => number;
window: number | (rateLimiter) => number;

定义于:rate-limiter.ts:30

限制适用的时间窗口(以毫秒为单位)。 可以是数字或接收速率限制器实例并返回数字的回调函数。


windowType?

ts
optional windowType: "fixed" | "sliding";
optional windowType: "fixed" | "sliding";

定义于:rate-limiter.ts:37

用于速率限制的窗口类型

  • 'fixed':使用在窗口期过后重置的固定窗口
  • 'sliding':使用允许随着旧执行过期而执行的滑动窗口 默认为 'fixed'