我正在使用PHP fopen()向ASP.NET MVC端点发出GET请求。当请求成功时,会有一个空的响应和一个HTTP 204状态码。为什么当响应是HTTP 204(空内容)时,fopen会发出警告?
但是,fopen正在发出警告,所以我试图找出解决这个问题的最佳方法。
$handle = fopen("http://myservice.com/test.php?foo=bar", "r");
警告是:
Warning: fopen(http://myservice.com/test.php?foo=bar) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 204 No Content in E:\web\test.php on line 18
我很困惑,为什么是的fopen连抛警告。处理这个问题的最好方法是什么?我应该:
- 带有“@”的前缀fopen调用来抑制警告?
- 更改web服务返回一些内容,如“确定”,所以状态将是一个HTTP 200 OK?
- ...别的东西?
感谢解决方案的细节以及原因。我的服务器确实运行PHP 5.2。 – TMC 2011-03-29 17:37:14