微信分享功能问题-描述内容换行,导致js加载失败

jsContent内容存在换行符,导致js处理失败,
解决办法,在后台接口中替换’/r/n’为空,并截取前30位
weiXinJsSdk.setSharcontent(StringUtils.isNotEmpty(data.getProfiles()) ? data.getProfiles().replaceAll("\r\n", “”).substring(0, 30) : “”);

 //微信分享
        StringBuilder sb = new StringBuilder("https://www.woyaoce.cn/topics/" + codeName + "/");
        String s = sb.toString();
        WeiXinJsSdk weiXinJsSdk = new WeiXinJsSdk();
        String encodeUrl = "";
        try {
            encodeUrl = URLEncoder.encode(s, "UTF-8");
            String url1 = "http://Openapi.woyaoce.cn/WeiXinJsSdk/GetInsSdk?url=" + encodeUrl;
            System.out.println(url1);
            LinkedHashMap<String, String> map = new LinkedHashMap<>();
            map.put("url", encodeUrl);
            String ss = HttpClientUtil.doGet("http://Openapi.woyaoce.cn/WeiXinJsSdk/GetInsSdk", map);
            weiXinJsSdk = JsonUtils.toBean(ss, WeiXinJsSdk.class);
        } catch (Exception e) {
            e.printStackTrace();
        }

        //广告位
        AdvInfo advList = advApiService.getAdvInfoById(86380);
        if (Objects.nonNull(advList)) {
            modelAndView.addObject("advList", advList);
        }

        weiXinJsSdk.setNowurl(s);
        weiXinJsSdk.setSharetitle(data.getName());
        //解决办法微信分享功能问题-描述内容换行,导致js加载失败↓↓↓↓↓↓↓
        weiXinJsSdk.setSharcontent(StringUtils.isNotEmpty(data.getProfiles()) ? data.getProfiles().replaceAll("\r\n", "").substring(0, 30) : "");
        weiXinJsSdk.setSharimg(data.getShareImg());
        modelAndView.addObject("weiXinJsSdk", weiXinJsSdk);
<script src="https://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
	<script type="text/javascript">
		var EncodeURI = function (unzipStr, isCusEncode) {
			if (isCusEncode) {
				var zipArray = new Array();
				var zipstr = "";
				var lens = new Array();
				for (var i = 0; i < unzipStr.length; i++) {
					var ac = unzipStr.charCodeAt(i);
					zipstr += ac;
					lens = lens.concat(ac.toString().length);
				}
				zipArray = zipArray.concat(zipstr);
				zipArray = zipArray.concat(lens.join("O"));
				return zipArray.join("N");
			} else {
				//return encodeURI(unzipStr);
				var zipstr = "";
				var strSpecial = "!\"#$%&'()*+,/:;<=>?[]^`{|}~%";
				var tt = "";

				for (var i = 0; i < unzipStr.length; i++) {
					var chr = unzipStr.charAt(i);
					var c = StringToAscii(chr);
					tt += chr + ":" + c + "n";
					if (parseInt("0x" + c) > 0x7f) {
						zipstr += encodeURI(unzipStr.substr(i, 1));
					} else {
						if (chr == " ")
							zipstr += "+";
						else if (strSpecial.indexOf(chr) != -1)
							zipstr += "%" + c.toString(16);
						else
							zipstr += chr;
					}
				}
				return zipstr;
			}
		}

		var StringToAscii = function (str) {
			return str.charCodeAt(0).toString(16);
		}

		var AsciiToString = function (asccode) {
			return String.fromCharCode(asccode);
		}


		var shareimg = 'https://img2.17img.cn/pic/20211209/20211209182249_7633.jpg';
		var appid= 'wx71271883f3fec076';
		var jsTitle= '最严新规 直击化妆品检测';
		//!!!!!!!!!!!!!!!!!!!!!问题出在这!!!!!!!!!!!!!!
		var jsContent= '近年来,随着消费水平提高,化妆品市场需求不断增长,成为增速最快的消费品子行业之一。在化妆品行业迅速崛起的同时,行业监管也持续加强,近几年政策不断出台,如《化妆品监督管理条例》、《化妆品新原料注册备案资料管理规定》、《化妆品注册备案管理办法》等。
企业不仅要满足消费者的各种需求,也要确保产品符合法规标准,保障产品安全。为此,广电计量特搜集相关监管检测知识进行分享,供广大企业进行了解学习,确保产品合规。';
//!!!!!!!!!!!!!!!!!!!!!问题出在这!!!!!!!!!!!!!!
		var currentUrl = 'https://www.woyaoce.cn/topics/HZP20211209/';
		var path = 'https://www.woyaoce.cn/webinarAdmintest/MeetingTemplate/GetWeiXinJsSdk?url=' + EncodeURI(currentUrl);
		var wxLink = currentUrl;
		var jsObj = null;

		$.ajax({
			url: path,
			dataType: "json",
			jsonp: 'jsoncallback',
			ajax:false,
			success: function (r) {
				jsObj = r;
				if (appid != null && appid != "" && jsObj != null) {
					wx.config({
						debug: false,
						appId: jsObj.appId,
						timestamp: jsObj.timestamp,
						nonceStr: jsObj.nonceStr,
						signature: jsObj.signature,
						jsApiList: [
							'onMenuShareAppMessage',
							'onMenuShareTimeline',
							'onMenuShareQQ',
							'onMenuShareQZone',
						]
					});


					wx.ready(function () {
						wx.onMenuShareTimeline({
							title: jsTitle,
							link: wxLink,
							imgUrl: shareimg,
							desc: jsContent,
							success: function () {
							},
							cancel: function () {
							}
						});
						wx.onMenuShareAppMessage({
							title: jsTitle,
							imgUrl: shareimg,
							link: wxLink,
							desc: jsContent,
							success: function () {
							},
							cancel: function () {
							}
						});
						wx.onMenuShareQQ({
							title: jsTitle,
							imgUrl: shareimg,
							link: wxLink,
							desc: jsContent,
							success: function () {
							},
							cancel: function () {
							}
						});
						wx.onMenuShareQZone({
							title: jsTitle,
							imgUrl: shareimg,
							link: wxLink,
							desc: jsContent,
							success: function () {
							},
							cancel: function () {
							}
						});
					});
				}
			}
		});

	</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值