python - 如何在不使用 Django Forms 的系统中使用 Django Simple Captcha

标签 python html django captcha

我被要求向使用 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/

相关文章:

django - 在 Django Channels 2 中向群组发送消息

javascript - AJAX 和 DJANGO 形式

python - 这是对 python 内置哈希函数的适当使用吗?

html - 使用 Putty 和 FTP 查找文件

html - 如何使索引页面看起来像网站的其余部分

php - 链接文件(样式表、脚本文件、图像等)

python - 静态文件不起作用 : Not Found:/{static 'logo.png' }

python - 在 Django 中返回 HttpResponse 后删除 tmp 文件

python - 通过迭代列表中的多个元素来构建输出字符串的正确方法是什么?

python - 如何在 django 中使用 python 获取应用程序名称