Требуется тело ответа HTTP 500 с file_get_contents (PHP) - PullRequest
24 голосов
/ 18 мая 2011

Использование file_get_contents как части пользовательской реализации SOAP для применения вызовов SOAP (ВСЕ библиотеки, которые мы пробовали, не будут правильно выполнять аутентификацию на основе SSL + сертификатов с SOAP 1.2). Однако сложный и едва документированный API часто возвращает 500. В теле ответа есть подробности об ошибке, но file_get_contents не позволяет получить к нему доступ. fopen, похоже, имеет ту же проблему.

Что делать?

Предпочитают не переходить на cURL из-за интенсивного использования потоковых контекстов для обеспечения работоспособности аутентификации.

1 Ответ

51 голосов
/ 18 мая 2011

Вы могли бы рассмотреть nusoap .

Хотя на ваш вопрос это работает, если вы используете ignore_errors.

$context = stream_context_create(array(
    'http' => array(
        'ignore_errors' => true
     )
));

$contents = file_get_contents($url, false, $context);
...