fix: 修复rate_limit为0但间隔过短事仍然导致429错误的问题

This commit is contained in:
helloplhm-qwq 2023-12-02 12:40:27 +08:00
parent fde8e7bcdb
commit 3d2d241a36
No known key found for this signature in database
GPG Key ID: 6BE1B64B905567C7

12
main.py
View File

@ -77,17 +77,9 @@ def check():
if (config.check_ip_banned(request.remote_addr)):
return utils.format_dict_json({"code": 1, "msg": "您的IP已被封禁", "data": None}), 403
# check global rate limit
if (
(time.time() - config.getRequestTime('global'))
<
(config.read_config("security.rate_limit.global"))
):
if ((time.time() - config.getRequestTime('global')) <= (config.read_config("security.rate_limit.global"))):
return utils.format_dict_json({"code": 5, "msg": "全局限速", "data": None}), 429
if (
(time.time() - config.getRequestTime(request.remote_addr))
<
(config.read_config("security.rate_limit.ip"))
):
if ((time.time() - config.getRequestTime(request.remote_addr)) <= (config.read_config("security.rate_limit.ip"))):
return utils.format_dict_json({"code": 5, "msg": "IP限速", "data": None}), 429
# update request time
config.updateRequestTime('global')