Google reCAPTCHA 的remoteip 参数被忽略

2024-01-13

在 recaptcha 的文档中(https://developers.google.com/recaptcha/docs/verify https://developers.google.com/recaptcha/docs/verify)它说remoteip参数是可选的,但我试图在请求中发送硬编码的错误IP,但Google仍然返回 success:true 响应。此参数的全部目的是防止使用第三方应用程序或工作人员(例如点击农场)生成验证码令牌,然后将其注入表单提交中。

老实说,我不明白我的代码有什么问题。如果有人知道此功能是否已被 Google 删除,请告诉我。

这是以前在这里提出的,但无论回答者都无法理解用户的问题:谷歌recaptcha Remoteip解释 https://stackoverflow.com/questions/46632194/google-recaptcha-remoteip-explanation

您可以通过在此处创建 reCAPTCHA v2 并替换 SITEKEY_GOES_HERE 和 SECRET_HERE 来自行测试:https://www.google.com/recaptcha/admin https://www.google.com/recaptcha/admin

{ "success": true, "challenge_ts": "2020-05-18T02:48:33Z", "hostname": "########" }

这是我的 verify.php 代码:

<?php
    $sender_name = stripslashes($_POST["sender_name"]);
    $sender_email = stripslashes($_POST["sender_email"]);
    $sender_message = stripslashes($_POST["sender_message"]);
    $response = $_POST["g-recaptcha-response"];

    $url = 'https://www.google.com/recaptcha/api/siteverify';
    $data = array(
        'secret' => 'SECRET_HERE',
        'response' => $_POST["g-recaptcha-response"],
        'remoteip' => '123.123.123.123',
    );
    $options = array(
        'http' => array (
            'method' => 'POST',
            'content' => http_build_query($data)
        )
    );
    $context  = stream_context_create($options);
    $verify = file_get_contents($url, false, $context);
    $captcha_success=json_decode($verify);

    if ($captcha_success->success==false) {
        echo $verify;
    } else if ($captcha_success->success==true) {
        echo $verify;
    }
?>

这是我的index.html代码:

<html>
  <head>
    <title>reCAPTCHA demo: Simple page</title>
    <script src="https://www.google.com/recaptcha/api.js" async defer></script>



  </head>
  <body>

  <form action="verify.php" method="post" enctype="multipart/form-data">
    <input name="sender_name" placeholder="Your Name..."/>
    <input name="sender_email" placeholder="Your email..."/>
    <textarea placeholder="Your Message..." name="sender_message"></textarea>
        <div class="captcha_wrapper">
        <div class="g-recaptcha" data-sitekey="SITEKEY_GOES_HERE"></div>
    </div>
    <button type="submit" id="send_message">Send Message!</button>
</form>


  </body>
</html>

Yes


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Google reCAPTCHA 的remoteip 参数被忽略 的相关文章

随机推荐

  • JPA 2.0 子选择/子查询按条件 api 的 order by 子句

    我想使用 JPA 2 0 criteria api 来构建带有子选择的 order by 子句 我知道你可以用普通的 SQL 来做到这一点 但是它可以用标准 api 来映射吗 有人可以给出代码示例吗 Example Order name a
  • 在 C++ 中可以锁定变量以防止对其进行更改吗?

    我正在使用一个成员变量 并且在程序的某个时刻我想更改它 但我更喜欢在其他地方 锁定它 以防止意外更改 代码解释 class myClass int x This should be prevented to being changed mo
  • 如果 JavaScript 构造函数失败,应该返回什么?

    如果我有一个无法实例化的 javascript 类 构造函数应该返回我可以测试的内容 构造函数总是返回一个对象 因此如果构造函数失败 我不能返回 null function SomeClass id if typeof id number
  • 使用 D3.js 沿连续路径进行插值

    我正在改编迈克 博斯托克的作品沿路径点插值 http bl ocks org mbostock 1705868模型接受数组n单独的路径并沿着每个路径进行插值连续地 对于 D3 来说 下面的代码相对较新 据我所知 它是为两条路径运行点插值同时
  • 在 Google App Engine 日志中查看 POST 请求的参数

    我有一个通过 Google App Engine 运行的服务器 我正在通过控制台查看服务器的请求日志 它们位于Google Cloud Platform gt Stackdriver Logging gt Logs 我想查看 POST 请求
  • 在 Python 中模拟远程主机

    我正在使用 paramiko 编写一些函数来执行命令并在远程主机上创建文件 我想为它们编写一些单元测试 但我不知道实现此目的最简单的方法是什么 这是我设想的代码大纲示例 import os import paramiko import py
  • 无法找到或加载主类org.apache.zookeeper.server.quorum.QuorumPeerMain [重复]

    这个问题在这里已经有答案了 我正在运行 apache kafka 的教程 在 apache kafka 网站上 并且必须使用帮助教程 http janschulte wordpress com 2013 10 13 apache kafka
  • Ruby on Rails - 根据查询在数据库中搜索

    我有一个简单的表单 我在其中设置了一个我想要浏览的查询 例如松下维埃拉 这是我在数据库中搜索术语的方式 Product where name ilike params q order price 查询看起来像 松下维埃拉 但我需要这样搜索查
  • 需要适用于 Iphone、Android、Windows/XP 的兼容 AES 代码加密/解密

    我需要能够从 Windows 向各种手机发送安全信息 我在 iPhone 和 Android 开发方面都是新手 但需要为每个环境创建一个易于使用的应用程序 与收到的短信交互也很好 我想获取适用于 iPhone Android 和 Windo
  • 如何在android活动中使用gradle.properties中的属性?

    如何在android活动中使用gradle properties中的属性 每当我构建代码时 它都会抛出错误 是否有可以在活动内部访问属性的特定方式 在 gradle properties 中 SIMPLE STRING ABC 在 buil
  • 记忆斐波那契的时间复杂度

    我最近遇到了这个 Haskell 记忆斐波那契实现 fibonacci Int gt Integer fibonacci map fib 0 where fib 0 0 fib 1 1 fib n fibonacci n 1 fibonac
  • 了解从整数到浮点数的转换

    有人能解释一下 32 位机器上这个奇怪的输出吗 include
  • 直接在视图中绑定模型属性

    我在 Prism 中找到了这段文字文档 http msdn microsoft com en us library gg405484 28v pandp 40 29 aspx 我开始使用 MVVM 但我迷失了方向 我可以 应该 在视图中绑定
  • ggplot2 中的蠕虫图残差图

    I m trying to plot the Worm plot residuals on a model fitted using the gamlss function from the gamlss package The inter
  • 使用 typedcolumn 选择 Spark 数据集

    看着select Spark DataSet 上的函数有各种生成的函数签名 c1 TypedColumn MyClass U1 c2 TypedColumn MyClass U2 这似乎暗示我应该能够直接引用 MyClass 的成员并且类型
  • TypeScript 定义函数的哈希表

    我正在尝试为车把创建一个定义文件 以便与预编译的车把脚本一起使用 Handlebars 会将预编译的脚本放入字符串索引的函数哈希表中 但我无法弄清楚或找到如何定义它 假设的定义是 declare module Handlebars expo
  • 使用连接字段的结果更新文档

    考虑包含以下文档的集合 id aaaaaaaaaaaa title Hello World date Thursday November 12 2015 time 9 30 AM endtime 11 30 AM id bbbbbbbbbb
  • Http-Conduit 频繁连接失败

    我正在编写将通过 HTTP 下载一些文件的应用程序 在某种程度上 我使用以下代码片段来下载页面正文 import network HTTP simpleHTTP getRequest http www haskell org gt gt g
  • 在 VueJS 中使用按钮进行水平滚动

    我希望使用 VueJS 中的按钮实现水平滚动 我有一个容器 其中有几个水平堆叠的 div 我想使用按钮滚动它们 Here https stackoverflow com questions 25028040 jquery horizonta
  • Google reCAPTCHA 的remoteip 参数被忽略

    在 recaptcha 的文档中 https developers google com recaptcha docs verify https developers google com recaptcha docs verify 它说r