ReCaptcha 离线/本地使用
Posted
技术标签:
【中文标题】ReCaptcha 离线/本地使用【英文标题】:ReCaptcha Offline / Local Usage 【发布时间】:2017-06-16 19:39:26 【问题描述】:我可以下载 Google 的 reCaptcha javascript API 并完全离线使用它吗?
如果是这样,我需要下载任何其他依赖项吗?最后,如何配置主要的 JavaScript API 以使其指向其依赖项?
【问题讨论】:
我不得不问你为什么要这样做。您将失去很多第 3 方 API 的好处(更新、错误修复等),而获得的好处很少(如果有的话)(如果使用通用 API,很可能已经缓存了)。此外,任何依赖项都可以嵌入到代码中,因此您必须对其进行修改,使其不查看当前所在的位置。 如果可以的话,我会很惊讶。为了验证用户的响应,您必须将数据发送到 Google 的网络服务,并获得响应。所有验证业务逻辑都在 Google 的服务器上。加载 GUI 时也是如此——它每次都是由 Google 的服务器动态生成的。这些东西没有“免费下载”链接。它是专有的软件即服务。从 Google 的角度来看,其目的是吸引用户使用他们的服务 - 这个特定的服务可能不销售广告,但他们使用它来捕获数据以进行 AI 研究,并且需要您获得他们的帐户 @Archer 我正在开发一个系统,无论我走到哪里都没有互联网连接,因此我希望能够在开发时尽管有这个限制,但能够使用验证码。但我不打算将它不可避免地离线,因为我将把它上传到服务器。当我还在开发系统时,我只会做这些离线工作。 @ADyson 哦。我知道了。我一直在假设整个事情可以在离线状态下运行。感谢您的洞察力! :) @RinMinase 可能会使用标志(在您的设置或任何地方)开发您的应用程序,以便您可以轻松启用/禁用验证码功能 - 如果您以合适的模块化方式构建应用程序,您可以选择是否或不根据设置运行相关的代码位(呈现验证码并检查响应)。然后,当您离线开发时,您只需切换设置并继续您的其他开发/测试工作 【参考方案1】:看起来this 会帮助你。您可以按照自己喜欢的方式操作 API,例如,您可以设置一个验证码,只需添加两个整数就要求用户回答 (1+2=??)
但是有很多很棒的人开发的离线验证码库。例如 1. For java apps
2. For php apps
【讨论】:
以上是关于ReCaptcha 离线/本地使用的主要内容,如果未能解决你的问题,请参考以下文章
有没有办法告诉recaptcha html组件使用本地recaptcha__en.js加载:而不是在外面寻找它?
在本地环境中使用 Google reCAPTCHA 时,是不是有办法解决 ResourceAccessException?
我可以在这个 Laravel 应用程序的本地 Apache 服务器上运行 reCAPTCHA 吗?