我正在為 Google Recaptcha 使用 PHP 包裝器庫。https://packagist.org/packages/google/recaptcha我需要設置一個代理,但正如我調查的那樣,這個庫不支持代理配置。有沒有人有機會為 Google Recaptcha 成功配置代理配置?這是在沒有代理的服務器上正常工作的代碼 /** * RecaptchaService constructor. * * @param ReCaptcha $recaptcha */ public function __construct(ReCaptcha $recaptcha) { $this->recaptcha = $recaptcha; } /** * @param array $data * * @return bool */ public function validateCaptcha(array $data): bool { $response = $this->recaptcha->verify($data['gRecaptchaResponse'], $data['clientIp']); return $response->isSuccess() || \PHP_SAPI === 'cli'; }我猜應該在verify方法調用之前或內部配置代理。
1 回答

阿波羅的戰車
TA貢獻1862條經驗 獲得超6個贊
有一個支持代理的 Google ReCaptcha 庫的分支
https://github.com/toskadv/recaptcha
$curl = new ReCaptcha\RequestMethod\CurlPost(null, null, [
CURLOPT_PROXY => 'http://127.0.0.1:9050/',
CURLOPT_PROXYTYPE => CURLPROXY_SOCKS5
]);
$recaptcha = new \ReCaptcha\ReCaptcha($secret, $curl);
$resp = $recaptcha->verify($gRecaptchaResponse, $remoteIp);
if ($resp->isSuccess()) {
// verified!
} else {
$errors = $resp->getErrorCodes();
}
- 1 回答
- 0 關注
- 203 瀏覽
添加回答
舉報
0/150
提交
取消