微信网页配置调用分享接口

管理员 发布于 6年前   361

拿到appid appSecret 

数据库不小心删了 我就直接贴代码了

前端:

<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
<script>
  wx.config({
      debug: false,
      appId: "{$appId}",
      timestamp: "{$timestamp}",
      nonceStr: "{$nonceStr}",
      signature: "{$signature}",
      jsApiList: [
        'checkJsApi',
        'onMenuShareTimeline',
        'onMenuShareAppMessage',
        'onMenuShareQQ'
      ]
  });
</script>
<script type="text/javascript">
    wx.ready(function(){
        // 分享事件必须放在这里
        wx.onMenuShareAppMessage({
              title: 'xxx',
              desc: "和{$faqiinfo['name']}一起支持{$xminfo['xm_name']}项目",
              link: "http://{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}",
              imgUrl: "http://{$_SERVER['HTTP_HOST']}/Public/home/images/pic300.jpg",
              trigger: function (res) {
                // 不要尝试在trigger中使用ajax异步请求修改本次分享的内容,因为客户端分享操作是一个同步操作,这时候使用ajax的回包会还没有返回
                // alert('用户点击发送给朋友');
              },
              success: function (res) {
                  alert('分享成功');
              },
              cancel: function (res) {
                alert('你没有分享');
              },
              fail: function (res) {
                alert(JSON.stringify(res));
              }
            });
            wx.onMenuShareTimeline({
                title: 'xxx',
                link: "http://{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}",
                imgUrl: "http://{$_SERVER['HTTP_HOST']}/Public/home/images/pic300.jpg",
                success: function () { 
                    // 用户确认分享后执行的回调函数
                     alert('分享到朋友圈成功');
                },
                cancel: function () { 
                    // 用户取消分享后执行的回调函数
                     alert('你没有分享到朋友圈');
                }
            });
    });
    </script>

控制器:

       $appId = APPID; // 必填,公众号的唯一标识
       $timestamp = time(); // 必填,生成签名的时间戳
       $nonceStr = sj_str(16); // 必填,生成签名的随机串
       //获取tk 
       $access_token = getAccessToken();
       $tk_url = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=".$access_token."&type=jsapi";
       $res = wget($tk_url);
       $jsapi_ticket = $res['ticket'];//tk
       //var_dump($jsapi_ticket);
       
       $url = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
       $str = "jsapi_ticket=".$jsapi_ticket."&noncestr=".$nonceStr."&timestamp=".$timestamp."&url=".$url;
       $signature = sha1($str); // 必填,签名,见附录1
       $this->assign('appId',$appId);
       $this->assign('timestamp',$timestamp);
       $this->assign('nonceStr',$nonceStr);
       $this->assign('signature',$signature);

效果图就不贴了

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!

该博客于2020-12-7日,后端基于go语言的beego框架开发
前端页面使用Bootstrap可视化布局系统自动生成

是我仿的原来我的TP5框架写的博客,比较粗糙,底下是入口
侯体宗的博客

      订阅博客周刊

文章标签

友情链接

HouTiZong
侯体宗的博客
© 2020 zongscan.com
版权所有ICP证 : 粤ICP备20027696号
PHP交流群
侯体宗的博客