Recatpcha API v3.0-支持Django
crecaptcha的Python项目详细描述
crecaptcha
一个用于google recaptcha v3的简单python模块
纯python模块,不需要请求库
安装
- 从PYPI上的最新版本:
pip install crecaptcha
如何使用?
fromcrecatpcha.crecaptchaimportcrecaptchaSECRET_KEY='Your secret key'defsome_function():response_token='the response token from the client'ifcrecaptcha(SECRET_KEY,response_token,'action_name'):# safe actionpasselse:# is a bot, take your custom action.pass
如何与django一起使用?
配置:
在settings.py中定义以下值:
crecaptcha_secret_密钥:recaptcha密钥。
crecaptcha_key_name:post请求中的var的名称,默认为“recaptcha_token”。
示例:
CRECAPTCHA_SECRET_KEY="jgjdnvurmfj3nrfo3nrlksjf"# MandatoryCRECAPTCHA_KEY_NAME="grecatpcha"# by default is 'recaptcha_token'
用法:
简单方法:
在下面的示例中,如果reCAPTCHA验证失败,它将引发HttpResponseForbidden
fromcrecatpcha.django_crecatpchaimportcrecaptcha@crecaptcha('login')deflogin_user(request):pass@crecaptcha('register',threshold=0.6)defregister_user(request):pass
前进方向:
可以在验证失败时定义自定义回调,也可以选择发送args&kwargs。
fromcrecatpcha.django_crecatpchaimportcrecaptchadefregister_user_on_crecaptcha_error(request,*args,**kwargs):pass@crecaptcha('register',register_user_on_crecaptcha_error,args_on_error=[],kwargs_on_error={})defregister_user(request):pass