我被要求向使用 Django 构建的系统的登录页面添加验证码字段。
我的问题是系统是用手工制作的 HTML 模板而不是 Django 表单编写的,因此简单验证码文档中提供的界面似乎不适用。重写登录页面目前看来不太可行。
有没有办法通过添加验证码字段将此包编织到自定义 HTML 代码中?
或者,是否有另一个可以轻松与自定义 HTML 一起使用的包?
最佳答案
是的reCaptcha
在具有自定义 HTML 的页面上进行设置非常简单
您将验证码加载到 html 中(我相信是在 iframe 中),然后检查以确保正确的答案已发布到您的 View 中。使用python库就像:
response = captcha.submit(
req.args['recaptcha_challenge_field'],
req.args['recaptcha_response_field'],
self.private_key,
req.remote_addr,
)
if response.is_valid:
# captcha was passed
示例摘自:
How to use Python plugin reCaptcha client for validation?
另一个 recaptcha python 客户端是 here
关于python - 如何在不使用 Django Forms 的系统中使用 Django Simple Captcha,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16246539/