标签:encodeURI vue 微信 H5 link 分享 data 链接
公众号 网页授权 官方文档
调用授权地址的设置
页面内直接跳转微信授权链接
window.location.href = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxbbc27d6e2a2b7be9&redirect_uri="+ urlcode+"&response_type=code&scope=snsapi_userinfo&state=123#wechat_redirect"
- redirect_uri 授权后返回的页面 可设置参数
- 带参数 必须使用 encodeURI 加密 (decodeURI) 参数和链接都要加密
- 例子:let urlcode = encodeURI("http://lm.huhacity.com/callBack.html?item="+encodeURI(JSON.stringify(self.InfoData)))
- self.InfoData 是自己要携带的参数
公众号 微信注册分享功能官方文档
async 异步方法 调用微信注册分享功能
async wechatShare(){
let self= this
let useUrl = self.useSharData.shardUseId?encodeURI('http://acity.com/#/couponShare?item='+encodeURI(JSON.stringify(self.useSharData))+'&type=true'):''
//注释 自定义分享链接 必须 encodeURI 加密 useUrl 为分享的链接
const data = await wechatConfig();//通过接口获取微信的信息 如://appId 微信appId timestamp 时间戳
//注册微信配置信息
wx.config({ debug: false, appId: data.data.appId, timestamp: data.data.timestamp, nonceStr: data.data.nonceStr, signature: data.data.signature, jsApiList: [ "onMenuShareTimeline", "onMenuShareAppMessage" ] });
//ready 方法为 分享功能注册成功 回调函数 及可自定义分享的信息
wx.ready(() => {
//朋友圈
wx.onMenuShareTimeline({
title: '邀请领取',
link: useUrl,
imgUrl:`http://${window.location.host}/static/images/huha_logo.png`,
success: (data) => { if(data.errMsg === 'onMenuShareTimeline:ok') { this.toast('分享成功'); } }, cancel: () => { this.toast('分享失败'); } });
//微信好友
wx.onMenuShareAppMessage({
title: '邀请领取', // 分享标题
desc: '邀请领取', // 分享描述
link: useUrl, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl:`http://${window.location.host}/static/images/a_logo.png`, // 分享图标
type: 'link', // 分享类型,music、video或link,不填默认为link
dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
success: (data) => {
if(data.errMsg === 'onMenuShareAppMessage:ok') { this.toast('分享成功'); } },
cancel: () => { this.toast('分享失败'); } }); }) },
注释 手机微信点击分享 无效时肯定是 自定义分享链接错误 ios不支持端口号 分享的链接不能带端口号
页面进入需要加载环境 如不做客户触发注册分享 做进入页面自动注册分享功能 需要做延迟调用
setTimeout(function() {
this.wechatShare()
}, 1500)
标签:encodeURI,vue,微信,H5,link,分享,data,链接 来源: https://www.cnblogs.com/wukongz/p/12580889.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。