Json вернулся из резюме ... плохо - PullRequest
0 голосов
/ 27 апреля 2018

при выполнении
$response = file_get_contents('https://www.google.com/recaptcha/api/siteverify', false, $context);
$result = json_decode($response);

Ответ
)]}'
["uvresp","03AJpayVHarkP_b40i5...stuff...VOrIy6m3ws",1,120]

SyntaxError: JSON.parse: неожиданный символ в строке 1 столбца 1 данных JSON

)]}' ломает вещи. Я понятия не имею, откуда это исходит. $g_recaptcha_response выглядит нормально для меня (что я посылаю в Google для проверки).

Функция проверки рекапчи

function verify_recaptcha ($g_recaptcha_response, $remote_address) {
    # Verify captcha
    $post_data = http_build_query(
        array(
            'secret' => 'secret',
            'response' => $g_recaptcha_response,
            'remoteip' => $remote_address
        )
   );

    $opts = array('http' =>
        array(
            'method'  => 'POST',
            'header'  => 'Content-type: application/x-www-form-urlencoded',
            'content' => $post_data
        )
    );

    $context  = stream_context_create($opts);
    $response = file_get_contents('https://www.google.com/recaptcha/api/siteverify', false, $context);
    $result   = json_decode($response);

    return $result->success;
}

Спасибо.

1 Ответ

0 голосов
/ 30 апреля 2018

Хорошо, мой плохой. Приведенный выше код работает, у меня возникла проблема в дальнейшем (запрос пытался использовать несуществующий столбец).

...