从API结果在php网页中显示PNG图像

时间:2015-05-28 22:28:15

标签: php api curl

这个问题的创建是因为我的上一个问题在没有重复时被标记为重复。

我有一个返回UTF-8 PNG图像的GET API调用。我正在使用PHP进行调用,并希望显示嵌入在网页中的PNG缩略图。有人可以帮我弄清楚如何与网页的其余部分一起显示图像吗?到目前为止,我只是采用CURL响应并将其回显到页面。这就是我所看到的。提前谢谢。

$curl = curl_init();
curl_setopt($curl,CURLOPT_URL,'$url');
curl_setopt($curl,CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17');
curl_setopt($curl,CURLOPT_HEADER, true);
curl_setopt($curl, CURLOPT_VERBOSE, 1);
$headers = array( 'X-Tableau-Auth: ' . $GLOBALS['authToken'] );
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
$resp = curl_exec($curl);
echo $resp;
$header_size = curl_getinfo($curl, CURLINFO_HEADER_SIZE);
$header = substr($resp, 0, $header_size);
$body = substr($resp, $header_size);
echo $body;
curl_close($curl);

enter image description here

1 个答案:

答案 0 :(得分:3)

这样做的一种方法是在base64中对图像内容进行编码,然后将其嵌入到页面中

echo '<img src="data:image/png;base64,' . base64_encode($body) . '">';

了解更多关于&#34;数据&#34; URL方案已读取RFC2397