微信小程序> 小程序二维码生成代码。后端tp5框架前端一个链接就好

小程序二维码生成代码。后端tp5框架前端一个链接就好

浏览量:3969 时间: 来源:会烘焙的工程师

小程序二维码生成代码带参数的 。后端tp5框架 前端一个链接就好

// 获取小程序码,适用于需要的码数量极多的业务场景。通过该接口生成的小程序码,永久有效,数量暂无限制。   public function getXcxCode(){    //获取参数值     $qid=request()->get('qid'); // 活动id    $yuid=request()->get('yuid'); // 活动id    // var_dump($qid);exit;    $appid="appid";$secret="secret";// 获取access_token$URL = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$appid&secret=$secret";    $apiData=file_get_contents($URL);    $arr =json_decode($apiData,true);    $access_token=$arr['access_token'];    // echo $arr['access_token'];exit;    $url="https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=".$access_token;    //这里是参数的拼接   $scene = $qid.'&'.$yuid.'&1';    // var_dump($scene);exit;      // $scene = "qid=19&yuid=19&souy=1";     $data=[                       'width'=>400,      'auto_color'=>false,      'scene'=>$scene,      'page'=>'pages/Club/Club'    ];        $data=json_encode($data);    $result = $this->_requestPost($url,$data);    // var_dump($result);exit;    if (!$result) {        return false;    }     // file_put_contents("static/xcxcode.jpeg", $result);      return $result;exit;       // $fileName=$moduleid."-".$itemid;           // if ($fileName) {    //     //判断file文件中是否存在数据库当中    //     $isfile=Db::name('xcxcode')->where('fileName=:fileName',['fileName'=>$fileName])->select();    //     if(!$isfile){    //        file_put_contents("static/xcxcode/".$fileName.".jpeg", $result);    //        $datafile=['fileName'=>$fileName];    //        Db::name('xcxcode')->insert($datafile);    //     }    //     return "static/xcxcode/".$fileName.".jpeg";           // }}

/*
* 发送GET请求的方法

 */ protected function _requestGet($url, $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)。    }    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;}/** * 发送GET请求的方法 * @param string $url URL * @param bool $ssl 是否为https协议 * @return string 响应主体Content */ protected 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;}

前端只有一句就好

 

wxml页面

  <!-- 二维码获得的地址 --> <image class='eimg' src="https://waphp.cn/public/index/code/getXcxCode?qid={{qid}}&yuid={{uuid}}" mode="widthFix" /> 

js页面

   // 这里是小程序扫描进入到的接收方式           // 这里是小程序扫描进入到的接收方式                          var scene = decodeURIComponent(e.scene)                          console.log(scene);                     if (scene!== 'undefined'){                           //&是我们定义的参数链接方式                           let qid = scene.split("&")[0];                           let yuid = scene.split('&')[1];                           let souy = scene.split('&')[2];                           console.log("qid=" + qid)                           console.log("yuid=" + yuid)                           console.log("souy=" + souy)                       that.setData({                         qid: qid,  //群ID                         yuid: yuid, //发送邀请人的用户id                         souy: souy, //分享返回主页按钮 1为显示 0为隐藏                       })

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎