0

我有一个休息电话,其工作是返回图像数据。

它是

服务/图像/测试

此 REST 调用返回具有预设路径的硬编码图像。

我正在使用 file_get_contents 来读取数据。

protected function processOutput($result, $success=false) {
        header('Content-Type: image/'.$result->imageType);
        echo $result->imageBytes;

processOutput() 是在进行 REST 调用之后调用的,以确定要返回浏览器的内容。只有上面的代码与问题相关,请不要要求此处粘贴的项目。:P

当我在浏览器中进行休息调用时,我看到了我的 content-type: image/png 集。

http://myProject/service/userImage/test

Response Headersview source
Cache-Control:no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Connection:Keep-Alive
Content-Length:4363
Content-Type:image/png

正如预期的那样,有一个 JS 错误(因为这没有返回任何内容供浏览器直接呈现(我猜?)

这是我在做的时候看到的

<img src="http://myProject/service/userImage/test"/>

在网络选项卡中返回:

Cache-Control:no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Connection:Keep-Alive
Content-Length:2856
Content-Type:text/html

为什么它忽略我所有的标题设置?我什至可以输入一个 404 标头字符串,它仍然显示为 200 OK 请求... :(

这一切的关键是我在进行休息时看不到图像吗?

4

1 回答 1

1

解决方案:我的代码中有一个 PHP 解析错误(省略了 $),我不知道设置 header() 会对我隐藏这个/更改我设置的内容类型。我以为没有消息就是好消息。PHP新手!

于 2012-09-24T19:07:46.643 回答