微信html5开发常见bug,微信公众号H5之微信分享常见错误和问题

url转码

确认

url是页面完整的

url(请在当前页面

alert(location.href.split('#')[0])确认),包括

'http(s)/'部分,以及’?’后面的

GET参数部分,但不包括

'#'hash后面的部分

即获取url完成地址的方法为

let url = window.location.href.split('#')[0];

如果链接带有中文字符或者特殊符号,前端需要使用encodeURIComponent编码,同时后端需要配合解码

let url = encodeURIComponent(window.location.href.split('#')[0]);

config注入

同一个

url仅需调用一次,对于变化

url的

SPA的

web app可在每次

url变化时进行调用,

注意,每次使用jssdk方法前都要先注入配置信息,并且,每使用一次,就要注入config一次.

在vue里,可以写在每次路由变化时

router.beforeEach((to, from, next) => {

// 获取权限验证配置(签名) 后端返回 getConfig, 注意返回字段的大小写!

let res

// 注入配置信息

wx.config({

debug: false, // 调试开关

appId: res.appId, // 必填,公众号的唯一标识

timestamp:res.timestamp , // 必填,生成签名的时间戳

nonceStr: res.nonceStr, // 必填,生成签名的随机串

signature: res.signature,// 必填,签名

jsApiList: ["updateAppMessageShareData","updateTimelineShareData"] // 必填,需要使用的JS接口列表

});

wx.ready(() => {

// doSoming

});

})

安全域名

一定要再三确认安全域名等微信公众号配置信息,如分享链接link字段

很多时候的错误并不是前端方法或者sdk等问题,而是后台有没有设置正确的安全域名和白名单等.

wx.updateAppMessageShareData({

title: '', // 分享标题

desc: '', // 分享描述

link: '', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致

imgUrl: '', // 分享图标

success: function () {

// 设置成功

}

})

常见错误

参考微信官网文档-附录5

在开发过程遇到

invalid signature

the permission value is offline verifying

permission denied

先参考文档,排除基本因素,还是不行,再查找搜索引擎的答案.

作者:浅吟轻唱

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值