Получить тело ответа от 404 в PHP
Я взаимодействую с API Battle.net, и мне нужно получить тело ответа при переходе на страницу 404. Проблема в том, что я получаю ошибку.
Я знаю, что у страницы есть тело, так как в документации есть пример, который имеет тело (скриншот ниже). Я также поместил в скриншот мою ошибку php. Любая помощь будет оценена.
вот мой код:
$ responseCode = get_http_response_code ($ api); // страница проверок существует
if($responseCode == 200) { //Page exists
$api = "battle.net/apirequest.......";
$json = file_get_contents($api);
$schema = json_decode($json, true);
$completeQuests = $schema['quests'];
} else if ($responseCode == 404) {
...Trying to find out why here.....
}
Спасибо, Джеймс Макни
РЕДАКТИРОВАТЬ: Кроме того, когда я иду прямо на URL, я получаю ответ JSON, так что я действительно не знаю, откуда эта ошибка.
1 ответ
Решение
file_get_content не позволит вам получить контент в случае сбоя. Чтобы получить контент, вы должны будете использовать библиотеку более низкого уровня; что-то вроде сказать скручиваемость.