PHP - Google Recaptcha 代理设置

我正在为 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方法调用之前或内部配置代理。


小唯快跑啊
浏览 184回答 1
1回答

阿波罗的战车

有一个支持代理的 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();}
打开App,查看更多内容
随时随地看视频慕课网APP