使用CURL GET请求将谷歌图表QRcode响应转换为图像

问题描述 投票:0回答:2

我正在尝试使用以图像/ png格式返回的Google API来获取QRCode作为响应

以下是我的代码

  // Get CURL resource
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_HTTPHEADER =>array('Content-type: image/png'),
    CURLOPT_URL => $response,//$response will have url
));
// Send the request & save response to $resp
$resp = curl_exec($curl);
echo "$resp"
// Close request to clear up some resources
curl_close($curl);

但是以下面的格式得到回应

   ���c�bKGD��������IDATx���͎�0@�P���r��
    �
  ���mf�AWV?����~�"�u��Q%䕐WB^  y%䕐WB^  y%䕐WB^  y%䕐WB^  y%䕐WB^  y?
  �_�m���|��f�ݟ1��9��
    y%䕐WBބqfg���c�����eG�oZ���J�+!o�8�s�?�)�x`�k$����V!
    ����J�[>άs�ٙ�k�J�+!��<x�95�JO7�B^   y%䕐�|�Y7)�\����i�O��WB^    
    y%��g.{,hg��IwчZ���J�+!o{ڹ�Y�v��:�B^ y%䕐7a��x��KB��|ꙩ�O�h�J�+!
   �����;s�hp�O}:�
   ��M��WB^    y%�-��42��x������J�+!�����{̺�/����B^   y%䕐��b��    
   �u�0}�sۭB^   y%䕐?ٴ��ԩwd2�ޙ�^%�%䕐�=;j��ݑvo�_vZ���J�+!
    �Q{�ʱ��p�sۭB^   y%䕐�=q�������u�B^  y%䕐oA9Ѻ�Ǐ/TM�*䕐WB^ 
   y�3Μ:�r�кsFS�
   y%䕐WB����]�nߠ�U�+!�������׽�w�{?�*䕐WB^   y�{g�G��WB^ y%䕐WB^  y%䕐
     WB^    y%䕐WB^  y%䕐WB^  y%䕐WB�o�p% f_�IEND�B`�

朋友我犯了什么错误。?并提前感谢。

php rest api curl google-chartwrapper
2个回答
0
投票

尝试使用file_get_contents()代替。


0
投票

您需要提供正确的内容类型标题,否则浏览器会将图像数据显示为文本。

在echo之前添加:

header('Content-Type: image/png');
© www.soinside.com 2019 - 2024. All rights reserved.