У нас есть форма contact.html, в которой используется reCaptcha v2, бэкэнд-обработка которого находится в файле php.
Я предпринял достаточно шагов, чтобы понять, что когда мы отправляем подтверждение в API Google, ответвозвращается пустымНиже приведен код, который дал мне это доказательство.
$url = 'https://www.google.com/recaptcha/api/siteverify?secret='.$secret.'&response='.$_POST["g-recaptcha-response"].'&remoteip='.$_SERVER['REMOTE_ADDR'];
$verify = file_get_contents($url);
echo $url;
if (empty($verify)) echo 'Failed to fetch data';`
Однако, когда я вручную ввожу URL-адрес в браузер, я получаю ответ JSON, который указывает на успех.
Что тогдаэто разница?Почему file_get_contents возвращает пустое значение, если простой запрос get из браузера Chrome доставляет мне проблемы?
Я прочитал, что file_get_contents является синхронным, поэтому я не ожидал, что это просто ошибка noob при ожидании ответа.
Буду признателен за любую помощь, я впервые работаю с PHP.Это не сложно, но я могу упустить что-то жизненно важное.