서버 측에서 Google reCAPTCHA v3를 어떻게 확인하나요?
P粉904191507
2023-08-27 16:48:47
<p>방금 확인란을 사용하여 새 Google 보안 문자를 설정했는데 프런트 엔드에서는 제대로 작동하지만 PHP를 사용하여 서버 측에서 처리하는 방법을 모르겠습니다. 아래의 기존 코드를 사용해 보았는데, 인증코드가 유효하지 않은데도 폼이 전송됩니다. </p>
<pre class="brush:php;toolbar:false;">require_once('recaptchalib.php');
$privatekey = "내 키";
$resp = recaptcha_check_answer($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
if (!$resp->is_valid) {
$errCapt='<p style="color:#D6012C ">보안문자 코드가 올바르게 입력되지 않았습니다.</p>';}</pre>
<p><br /></p>
개인 키 보안
여기 답변은 확실히 효과가 있지만
GET
请求,这会暴露您的私钥(即使使用https
)을 사용합니다. Google Developers에서 지정된 메소드는POST
입니다.자세한 내용은: https://stackoverflow.com/a/323286/1680919
POST를 통해 인증
으아악배열 구문: 저는
])을 사용합니다. 귀하의 PHP 버전이 아직 이를 지원하지 않는다면, 이에 따라 3개의 배열 정의를 편집해야 합니다(주석 참조).[
和]
array(..)대신 "새로운" 배열 구문([
및반환 값
true를 반환하고, 유효하지 않으면 🎜false를 반환합니다. 오류가 발생합니다. 예를 들어 🎜if (isValid()) { ... }🎜라고 쓰면 간단하게 사용할 수 있습니다.true
;如果无效,则返回false
;如果用户有效,则返回null
如果发生错误。例如,您可以简单地通过编写if (isValid()) { ... }
: 이 함수는 사용자가 유효하면이것이 해결책입니다
index.html
으아악verify.php
으아악http://codeforgeek.com/2014/12/google-recaptcha-tutorial/