rak*_*tin 12 html javascript recaptcha
我的用户中只有极少数人会获得一个验证码,要求他们复制并粘贴代码,但它总是会失败 - 而大多数用户都会得到正常的(复选框)正常通过.谷歌搜索只返回三个人获取验证码的实例,其中没有任何有任何有价值的信息
关于为什么他们获得验证码的任何想法,最重要的是它为什么失败?
当客户端禁用JavaScript时会发生这种情况.我们来看看下面的示例代码.
<script type="text/javascript"
src="https://www.google.com/recaptcha/api/challenge?k=your_public_key">
</script>
<noscript>
<iframe src="https://www.google.com/recaptcha/api/noscript?k=your_public_key"
height="300" width="500" frameborder="0"></iframe><br>
<textarea name="recaptcha_challenge_field" rows="3" cols="40">
</textarea>
<input type="hidden" name="recaptcha_response_field"
value="manual_challenge">
</noscript>
Run Code Online (Sandbox Code Playgroud)
我们可以看到,有些noscript标签包含a iframe,a textarea和hidden input.禁用JavaScript时,它将呈现noscript标记的内容,它看起来像这样.

在iframe包含一个表格,用户可以输入验证码并提交表单,基于此,iframe将加载包含响应代码了新的一页.由于JavaScript被禁用,将该令牌获取到父页面表单的唯一方法是让用户将令牌复制并粘贴到textarea示例中.
只要用户正确地复制并粘贴令牌,它就可以正常工作.仔细检查验证码的HTML是否包含正确的备用元素.您还可以在浏览器中禁用JavaScript以自行测试.
| 归档时间: |
|
| 查看次数: |
6564 次 |
| 最近记录: |