微信分享

一、某些问题

1、分享的标题和描述不显示;

2、分享的logo不显示;

3、必须在*.signature.cn环境下进行调试,否则无法访问用来签名的https://io.signature.cn服务;

4、io.signature.cn服务使用https协议通信,中间难以通过代理拦截;

5、分享相关微信jsBridge接口,只在微信App中存在,无法在本地开发环境调用。

二、解决方案

开启debug,根据返回错误信息,查询微信开发文档;

1、下载安装微信Web开发者工具

2、下载并安装Charles下载并破解

3、打开charles,安装根证书

安装根证书

安装根证书2

4、在Proxy -> SSL Proxying Settings中,加入 *.signature.cn域名

安装根证书3

5、在Tools -> Map Local 功能中,加入需要代理到本地的线上URL到本地文件夹的对应关系

map1

map2

6、在微信开发者工具中,设置代理到Charles端口

代理

7、在微信开发者工具中,打开线上地址,可以看到 js 文件已经被替换,这时候可以在同时有线上 API 和微信 jsBridge 的环境下进行调试。

http://m.signature.cn/

三、一些原因

1、 invalid signature

签名错误,后端排查。

2、 require subscribe

没有关注该测试公众号,微信关注。

四、如何关注测试公众号?

开发环境联调阶段,前端如果想自测微信分享功能,让后端同事打开链接http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login

用他自己的微信账号扫码登录“公众平台测试账号系统”, 此时他的手机显示登录成功,电脑跳转到新页面

https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index

在这个用后端开发同事账号登录的页面内,前端同事打开自己的微信扫码关注测试公众号,即可前往项目页面扫码测试分享功能,图标就会出来了。

五、为什么需要关注后端同事的测试公众号?

因为后端代码中有设置appID,appsecret。后端开发或者测试同事相当于管理员,可以修改js接口安全域名,比如开发环境,测试环境。

原文地址:https://www.cnblogs.com/camille666/p/weixin_share.html