收藏
回答

wxacode.getUnlimited 返回的返回的Buffer 保存成图片也是打不开?


也试过手动保存成图片文件 也是打不开

print_r(json_decode($res));

print_r(json_encode($res));

也试过 直接空白

var_dump(json_encode($res));

返回bool(false)




回答关注问题邀请回答
收藏

2 个回答

  • 大山
    大山
    2023-04-04

    使用第三方库不香吗?easywechat ,试一下下面这个。

    define('IA_ROOT', str_replace('\\', '/', dirname(dirname(__FILE__))));
    $file = IA_ROOT.'/mpcode.jpg';
    $result = posturl($url, [
        'scene' => 'order',
        'page' => 'pages/home/index',
        'width' => 200,
        'check_path' => false,
    ]);
    //$result 自己检查异常情况。
    file_put_contents($file, $result);
    
    function posturl($url, $data){
        $data  = json_encode($data);
        $headerArray =array("Content-type:application/json;charset='utf-8'","Accept:application/json");
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,FALSE);
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
        curl_setopt($curl,CURLOPT_HTTPHEADER, $headerArray);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        $output = curl_exec($curl);
        curl_close($curl);
        return $output;
    }
    


    2023-04-04
    有用 1
    回复 2
    • Knight
      Knight
      2023-04-04
      返回的内容  跟我之前的一样 保存的图片 也是打不开
      2023-04-04
      回复
    • 大山
      大山
      2023-04-04回复Knight
      楼下说的没错,返回的文件二进制流,直接保存到文件。
      2023-04-04
      回复
  • Mr.Zhao
    Mr.Zhao
    2023-04-04

    正确返回的是文件二进制流,可不是json。接口错误才是json

    2023-04-04
    有用
    回复
登录 后发表内容