小程序生成帶有多參數的太陽碼


    public function _make_tmp_xcx_code() {

        // 查看是否已存儲到數據庫
        $request_data = [
            'path'      =>      "/pages/product_type/product_detail?id=100",          // 注意是path  , 不是page
            'width'     =>      280
        ];

        $access_token = $this->_get_access_token();
        if (!$access_token){
            return false;
        }

        vendor('Func.Http');

        //$url = "https://api.weixin.qq.com/wxa/getwxacode?access_token=" . $access_token;

        $request_url = 'https://api.weixin.qq.com/wxa/getwxacode?access_token='.$access_token;
        //$result = Http::doPostJson($request_url,$request_data);

        $request_data = json_encode($request_data);

        $result = $this->_requestPost($request_url, $request_data);

        $this->setlog([$request_url,$request_data],[$result,json_decode($result,true),$result->errcode,$result['errcode']],__METHOD__,'code.log');

        $decode_result = json_decode($result,true);

        if ($decode_result['errcode']){
            dump($decode_result);
            exit;
        }

        // 存入cdn
        $cdn_result = $this->upload_cdn($result,'suncode');
        $this->setlog([],$cdn_result,__METHOD__.'__33','xcx_code.log');

        dump($cdn_result);
        exit;
    }



    public function _requestPost($url, $data, $ssl=true)
    {
        //curl完成
        $curl = curl_init();
        //設置curl選項
        curl_setopt($curl, CURLOPT_URL, $url);//URL
        $user_agent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : '
    Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0 FirePHP/0.7.4';
        curl_setopt($curl, CURLOPT_USERAGENT, $user_agent);//user_agent,請求代理信息
        curl_setopt($curl, CURLOPT_AUTOREFERER, true);//referer頭,請求來源
        curl_setopt($curl, CURLOPT_TIMEOUT, 30);//設置超時時間
        //SSL相關
        if ($ssl) {
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);//禁用后cURL將終止從服務端進行驗證
            curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2);//檢查服務器SSL證書中是否存在一個公用名(common name)。
        }
        // 處理post相關選項
        curl_setopt($curl, CURLOPT_POST, true);// 是否為POST請求
        curl_setopt($curl, CURLOPT_POSTFIELDS, $data);// 處理請求數據
        // 處理響應結果
        curl_setopt($curl, CURLOPT_HEADER, false);//是否處理響應頭
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);//curl_exec()是否返回響應結果

        // 發出請求
        $response = curl_exec($curl);
        if (false === $response) {
            echo '<br>', curl_error($curl), '<br>';
            return false;
        }
        curl_close($curl);
        return $response;
    }


<pre>array(3) {
[&quot;errno&quot;] =&gt; string(1) &quot;0&quot;
[&quot;errmsg&quot;] =&gt; string(2) &quot;ok&quot;
[&quot;save_name&quot;] =&gt; string(46) &quot;http://cdn.caomall.net/1567500276665758601.png&quot;
}
</pre>

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM