<script src="~/script/jweixin-1.6.0.js"></script>
<script src="~/script/moment.js"></script>
<script src="~/script/sha1.js"></script>
function randomString(len) {
len = len || 32;
const $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';/****默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/
const maxPos = $chars.length;
let pwd = '';
for (let i = 0; i < len; i++) {
pwd += $chars.charAt(Math.floor(Math.random() * maxPos));
}
return pwd;
}
const _timestamp = moment().format('X');
const _nonce_str = randomString(32);
const jsapi_ticket = GetUrlParam("jsapi_ticket") || "@Model.Ticket" // 后端提供
const url = window.location.href;
const _sign = sha1(`jsapi_ticket=${jsapi_ticket}&noncestr=${_nonce_str}×tamp=${_timestamp}&url=${url}`);
wx.config({
debug: false,
appId: "123456789", // 必填,公众号的唯一标识,需要注册公众号提供appid
timestamp: _timestamp.toString(), // 必填,生成签名的时间戳
nonceStr: _nonce_str, // 必填,生成签名的随机串
signature: _sign,// 必填,签名,见附录1
jsApiList: ["updateAppMessageShareData","updateTimelineShareData"] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 onMenuShareAppMessage
});
wx.ready(function () { //需在用户可能点击分享按钮前就先调用
wx.updateAppMessageShareData({
title: '分享标题', // 分享标题
desc: '我是一只小鸭子咿呀咿呀呦!', // 分享描述
link: location.href, // 分享链接,该链接域名或路径必须与当前页面对应的公众号 JS 安全域名一致
imgUrl: 'http://fanjiaxing.com/img/change-1.4b9bb6f.png', // 分享图标
success: function () {
alert('成功啦!')
}
})
});
注意:复制粘贴的链接发送到微信,会是一串地址,从政地址点进去再次分享,还是一串网址,
1.将这个链接生成二维码,用微信扫描打开后风险,才会显示名片,
2.将这个网页挂载到公众号下面,通过公众号的菜单栏那里,进入过这个链接,然后再去分享,也会是名片
3.如果是从app里面分享到微信的话,app可以配置分享过来的名片,分享过来之后,在微信里面打开,右上角再次分享,是可以展示h5配置的名片的