微信公众号调用jssdk自定义分享内容的时候,二次分享时图片丢失,描述变长链接,标题被截短解决方案

首先从个人理解的角度分析导致这个问题的原因,看过很多网上的说法,是因为二次分享的时候微信会自动在URL:/?后面加入singlemessage,from等标识来识别这个是二次分享,这就导致了调用wx.config配置时的域名和在微信公众号后台的域名不一致促使jssdk的验证失败。
解决方案入下:
在ajax的get config之前 加入json split切割方法 切掉?之后的内容,判断url是否被加长后重新赋值给url正确的js安全域名。

// 二次分享对url切割?后面的值
	var myurl  = window.location.href.split("?")[0];
	if(myurl !== window.location.href)
	{
		window.location.href = myurl;
	}

以防万一还在head中的meta加了描述以及在body一开始加入了一个隐藏的div放logo,因为微信二次分享时
的调用逻辑是自动获取meta中描述作为desc,以及在body中调用第一个图片作为imageurl的压缩图片。

<title>最好和描述内容一致</title>
<meta name="keywords" content="微信二次分享" />
<meta name="description" content="要描述的内容" />

body开头加代码:
<!-- 解决二次分享压缩图的丢失 -->
<div style="display:none">
<img src="./img/customlogo.jpg" alt="" />
</div>

猜你喜欢

转载自blog.csdn.net/qq_37225921/article/details/102996563