需要带有 file_get_contents (PHP) 的 HTTP 500 响应体

Posted

技术标签:

【中文标题】需要带有 file_get_contents (PHP) 的 HTTP 500 响应体【英文标题】:Need response body of HTTP 500 with file_get_contents (PHP) 【发布时间】:2011-08-27 19:29:56 【问题描述】:

使用 file_get_contents 作为自定义 SOAP 实现的一部分来应用 SOAP 调用(我们尝试的所有库都不会正确使用 SOAP 1.2 进行基于 SSL + 证书的身份验证)。然而,困难且几乎没有记录的 API 通常返回 500。响应正文中有错误详细信息,但 file_get_contents 似乎不允许访问它。 fopen 似乎也有同样的问题。

做什么?

由于大量使用流上下文来进行身份验证,因此不希望使用 cURL。

【问题讨论】:

file_get_contents 应该给你响应正文。你能显示一些代码吗? echo file_get_contents($url, false, $context);将生成一个 php 警告,报告 500 但不返回任何内容。 【参考方案1】:

你可以考虑nusoap。

不过,对于您的问题,如果您使用 ignore_errors,它会起作用。

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

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

【讨论】:

ignore_errors 是这里的解决方案。 您对 nusoap 的问题...是的,这是第一次尝试。不幸的是没有做1.2。从字面上看,这个脚本写了 5 次,然后才得到了一些有用的东西。甚至尝试过似乎是最完整的库的 WSO2 的 WSF/PHP。只有 lib 宣传支持我们需要的一切,但没有完全提供。 巴姆。正是我需要的。

以上是关于需要带有 file_get_contents (PHP) 的 HTTP 500 响应体的主要内容,如果未能解决你的问题,请参考以下文章

使用带有file_get_contents的FTP URL包装器时“无法打开流:操作失败”

如何在 Javascript 中使用 file_get_contents 和 json_decode

php file_get_contents 和 curl_exec 不适用于外部文件

使用带参数的 file_get_contents 从 PHP 获取请求

php中的file_get_contents或curl?

异步 file_put_contents/file_get_contents?