本文介绍了如何通过Java脚本检测re-Captcha站点密钥是否有效?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试通过Java脚本检测Google re-Captcha的"无效站点密钥"错误,以便可以将该错误报告给服务器进行进一步处理。我正在使用显式呈现模式并调用API函数grecaptcha.render('iframeid', {'site-key':'xxx'});
,尽管该函数不会返回任何错误响应或引发异常,即使它加载了以下内容:
我也不能简单地读取加载的错误文本,因为它加载在不同域上的IFRAME中。有没有办法通过Java脚本或服务器端自动检测无效的站点密钥?
编辑最终的解决方案是使用phantomjs加载测试页面并解析reCAPTCHA的html
推荐答案
Google不提供验证站点密钥的方法,您也不能通过JS破解/访问reCaptcha html代码,因为reCapthca位于iFrame中,而Frame的代码不能通过编程方式访问客户端。
因为您管理多个域,所以我建议您对您使用的所有域使用一个站点密钥。为此,请使用secure token。
黑客攻击
另一种选择可能是您开发一个脚本,用于访问感兴趣的站点、创建加载的reCaptcha的屏幕截图/快照、应用OCR(例如。使用this),并在站点密钥有效或无效时返回结果。
这篇关于如何通过Java脚本检测re-Captcha站点密钥是否有效?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!