【问题标题】:API request limitAPI 请求限制
【发布时间】:2013-07-20 19:49:34
【问题描述】:

我正在为我的 Web 应用程序设计一个 API,我想限制用户(具有唯一令牌)可以发出的请求数。我该如何设计它,使得每次请求后发出的请求数增加 1,同时又避免不一致,例如当用户在我更新请求计数器之前发出另一个请求时?

【问题讨论】:

  • 您使用什么数据存储来跟踪计数器?
  • 我目前正在使用 sqlite (python) 进行测试

标签: api request limit


【解决方案1】:

这将取决于您最终决定使用的数据存储以及如何实现递增计数器值。 SQLite is transactional,因此它将遵循 ACID 属性。您需要确保应用程序逻辑正确隔离事务,即您无法从数据库中检索计数器的当前值、采取一些操作,然后对其进行递增并更新数据存储。我想允许数据存储直接处理值的增量可能是最好的,例如SQLite - increase value by a certain number

以下内容非常针对您的问题,可能会有所帮助: How To Rate-Limit An API

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-11
    • 2014-11-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多