weixin_43241116 2020-05-29 17:49 采纳率: 0%
浏览 1847

vue在微信公众号中调用右上角的分享(直接点击的右上角的分享),怎么改变分享到朋友的图标以及标题, 把没有图标的分享改成有图标的分享。

vue在微信公众号中调用右上角的分享(直接点击的右上角的分享),怎么改变分享到朋友的图标以及标题,
把没有图标的分享改成有图标的分享
图片说明图片说明

  • 写回答

1条回答 默认 最新

  • 贝恩斯 2020-05-29 19:30
    关注

    在网站上实现微信分享接口(设置标题、缩略图、连接、描述),具体的方法如下(文章末尾有demo下载入口):

    一、先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。(注:认证帐号才有分享权限)

    二、创建一个demo.php文件和wxshare.js文件:

    demo.php

    复制代码
    <?php
    // 步骤1.设置appid和appsecret
    $appid = 'wxff4f410748ba11027'; //此处填写绑定的微信公众号的appid
    $appsecret = '246fbf3e581efeff3b11100aa17d4c4'; //此处填写绑定的微信公众号的密钥id

        // 步骤2.生成签名的随机串
        function nonceStr($length){
                $str = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJK1NGJBQRSTUVWXYZ';//随即串,62个字符
                $strlen = 62;
                while($length > $strlen){
                $str .= $str;
                $strlen += 62;
                }
                $str = str_shuffle($str);
                return substr($str,0,$length);
        }
    
        // 步骤3.获取access_token
        $result = http_get('https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.$appid.'&secret='.$appsecret);
        $json = json_decode($result,true);
        $access_token = $json['access_token'];
    
        function http_get($url){
                $oCurl = curl_init();
                if(stripos($url,"https://")!==FALSE){
                        curl_setopt($oCurl, CURLOPT_SSL_VERIFYPEER, FALSE);
                        curl_setopt($oCurl, CURLOPT_SSL_VERIFYHOST, FALSE);
                        curl_setopt($oCurl, CURLOPT_SSLVERSION, 1); //CURL_SSLVERSION_TLSv1
                }
                curl_setopt($oCurl, CURLOPT_URL, $url);
                curl_setopt($oCurl, CURLOPT_RETURNTRANSFER, 1 );
                $sContent = curl_exec($oCurl);
                $aStatus = curl_getinfo($oCurl);
                curl_close($oCurl);
                if(intval($aStatus["http_code"])==200){
                        return $sContent;
                }else{
                        return false;
                }
        }
    
        // 步骤4.获取ticket
        $url = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?type=jsapi&access_token=$access_token";
        $res = json_decode ( http_get ( $url ) );
        $ticket = $res->ticket;
    
    
        // 步骤5.生成wx.config需要的参数
        $surl = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
        $ws = getWxConfig( $ticket,$surl,time(),nonceStr(16) );
    
        function getWxConfig($jsapiTicket,$url,$timestamp,$nonceStr) {
                $string = "jsapi_ticket=$jsapiTicket&noncestr=$nonceStr&timestamp=$timestamp&url=$url";
                $signature = sha1 ( $string );
    
                $WxConfig["appId"] = $appid;
                $WxConfig["nonceStr"] = $nonceStr;
                $WxConfig["timestamp"] = $timestamp;
                $WxConfig["url"] = $url;
                $WxConfig["signature"] = $signature;
                $WxConfig["rawString"] = $string;
                return $WxConfig;
        }
    

    ?>

    <!DOCTYPE html>



    微信分享接口示例



    这是一个微信分享接口示例预览页面,可以发送到微信端预览并转发给朋友或者分享朋友圈看看效果如何!

    wx.config({ debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId: 'wxff4f410721541a1967', // 必填,公众号的唯一标识 timestamp: "<?php echo $ws["timestamp"]; ?>", // 必填,生成签名的时间戳 nonceStr: '<?php echo $ws["nonceStr"]; ?>', // 必填,生成签名的随机串 signature: '<?php echo $ws["signature"]; ?>',// 必填,签名,见附录1 jsApiList: [ 'checkJsApi', 'onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ', 'onMenuShareWeibo' ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); var wstitle = "微信分享接口示例预览"; //此处填写分享标题 var wsdesc = "这是一个微信分享接口示例预览页面,可以发送到微信端预览并转发给朋友或者分享朋友圈看看效果如何!"; //此处填写分享简介 var wslink = "<?php echo $surl; ?>"; //此处获取分享链接 var wsimg = "https://www.yudouyudou.com/demo/wxshare/wx.jpg"; //此处获取分享缩略图



    复制代码

    wxshare.js

    复制代码
    wx.ready(function () {
    // 分享到朋友圈
    wx.onMenuShareTimeline({
    title: wstitle,
    link: wslink,
    imgUrl: wsimg,
    success: function () {
    alert('分享成功');
    },
    cancel: function () {
    }
    });

        // 分享给朋友
        wx.onMenuShareAppMessage({
                title: wstitle,
                desc: wsdesc,
                link: wslink,
                imgUrl: wsimg,
                success: function () {
                    alert('分享成功');
                },
                cancel: function () {
                }
        });
    
        // 分享到QQ
        wx.onMenuShareQQ({
                title: wstitle,
                desc: wsdesc,
                link: wslink,
                imgUrl: wsimg,
                success: function () {
                        alert('分享成功');
                },
                cancel: function () {
                }
        });
    
        // 微信到腾讯微博
        wx.onMenuShareWeibo({
                title: wstitle,
                desc: wsdesc,
                link: wslink,
                imgUrl: wsimg,
                success: function () {
                        alert('分享成功');
                },
                cancel: function () {
                }
        });
    
        // 分享到QQ空间
        wx.onMenuShareQZone({
                title: wstitle,
                desc: wsdesc,
                link: wslink,
                imgUrl: wsimg,
                success: function () {
                        alert('分享成功');
                },
                cancel: function () {
                }
        });
    

    });

    复制代码
    参考网址

    https://www.yudouyudou.com/jiaochengheji/wangzhanjianshe/1225.html

    评论

报告相同问题?

悬赏问题

  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 划分vlan后不通了
  • ¥15 GDI处理通道视频时总是带有白色锯齿
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)
  • ¥15 自适应 AR 模型 参数估计Matlab程序
  • ¥100 角动量包络面如何用MATLAB绘制
  • ¥15 merge函数占用内存过大
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大