Получить тело ответа от 404 в PHP

Я взаимодействую с API Battle.net, и мне нужно получить тело ответа при переходе на страницу 404. Проблема в том, что я получаю ошибку.

Я знаю, что у страницы есть тело, так как в документации есть пример, который имеет тело (скриншот ниже). Я также поместил в скриншот мою ошибку php. Любая помощь будет оценена.

Документы Battle.net

вот мой код:

$ 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 не позволит вам получить контент в случае сбоя. Чтобы получить контент, вы должны будете использовать библиотеку более низкого уровня; что-то вроде сказать скручиваемость.

Другие вопросы по тегам