美文网首页
Django 插件实现请求次数限制

Django 插件实现请求次数限制

作者: 空山晚来秋 | 来源:发表于2018-03-26 18:32 被阅读0次

为了防止用户恶意访问接口(爬虫), 可以对一定时间内请求次数做限制. 若超出限制次数, 则返回错误页面

此处使用的插件为django-ratelimit, 它可以通过ip限制,也可以通过访问次数限制. 使用很灵活

安装

pip install django-ratelimit

官方文档

http://django-ratelimit.readthedocs.io/en/v1.0.0/

使用案例

from ratelimit.decorators import ratelimit


@ratelimit(group=None, key=, rate=None, method=ALL, block=False)
def myview(request):
    pass

大致用法: (翻译不通)
| Parameters: |

  • groupNone A group of rate limits to count together. Defaults to the dotted name of the view.

  • key – What key to use, see Keys.

  • rate
    请求次数限制, 5/m为5次每分钟, 单位可以是秒, 分, 时, 日
    ‘5/m’ The number of requests per unit time allowed. Valid units are:

    • s - seconds
    • m - minutes
    • h - hours
    • d - days

    Also accepts callables. See Rates.

  • methodALL Which HTTP method(s) to rate-limit. May be a string, a list/tuple of strings, or the special values for ALL or UNSAFE (which includes POST, PUT, DELETE and PATCH).

  • blockFalse Whether to block the request instead of annotating.

相关文章

  • Django 插件实现请求次数限制

    为了防止用户恶意访问接口(爬虫), 可以对一定时间内请求次数做限制. 若超出限制次数, 则返回错误页面 此处使用的...

  • Go限制请求次数——简陋实现

    前些日子写的限制请求次数,结果用的时候发现可以更简单实现。 需求:抓数据的网站限定1秒只能有10次请求 由于发起并...

  • Ajax数据爬取实战--以拉勾网为例

    写在最前面: 本文只做学习交流用,请勿恶意使用相关代码测试代码,注意限制请求次数测试代码,注意限制请求次数测试代码...

  • 2.3 Django限制请求method

    Django限制请求method 常用的请求method: GET请求:GET请求一般用来向服务器索取数据,但不会...

  • 最浅显易懂的Django系列教程(26)-限制请求method

    Django限制请求method 常用的请求method: GET请求:GET请求一般用来向服务器索取数据,但不会...

  • 中间件

    Django中间件 概念:Django中一个轻量级、底层的插件系统,可以介入Django的请求和响应处理过程,修改...

  • 中间件和上下文处理器

    Django中间件(Middleware) 是一个轻量级、底层的“插件”系统,可以介入Django的请求和响应处理...

  • 中间件

    Django中的中间件是一个轻量级、底层的插件系统,可以介入Django的请求和响应处理过程,修改Django的输...

  • Django-中间件

    Django中的中间件是一个轻量级,底层的插件系统,可以介入django的请求和响应处理过程,修改Django的输...

  • django-cors-headers 跨域问题

    django-cors-headers ''' 浏览器具有 "同源策略的限制",导致 `发送ajax请求` + `...

网友评论

      本文标题:Django 插件实现请求次数限制

      本文链接:https://www.haomeiwen.com/subject/learcftx.html