【发布时间】:2020-04-08 16:58:22
【问题描述】:
我的网站上有一个联系表,其中包含了 reCAPTCHA。客户端正在工作;但是,服务器端有问题。 Google reCAPTCHA 网站的服务器端集成页面提供了密钥、响应和远程 IP 表。我已将它们包含在我的代码中,但我不知道要包含什么作为响应,因为表格显示:
回复:必填。 reCAPTCHA 提供的用户响应令牌 您网站上的客户端集成。
这是我的 PHP 代码:
$secretKey="";
$responseKey=$_POST['g-recaptcha-response'];
$UserIP = $_SERVER['REMOTE_ADDR'];
$url="...siteverify?secret=$secretKey$response=$responseKey&remoteip=$UserIP";
$response = file_get_contents($url);
$response = json_decode($response);
if($response->success){
do something
}
else{
Display error message
}
目前,这不起作用,代码正在执行 if 的 else 部分,即使用户已通过验证。我不确定 $response 的价值,所以我猜这就是问题所在。我该如何解决这个问题? 是因为 $response 吗?如果是这样,我应该在这里给 $response 什么值:
$responseKey=$_POST['g-recaptcha'];
【问题讨论】:
标签: php html forms http recaptcha