微信二次分享失败

来源:互联网 发布:cs编程语言 编辑:程序博客网 时间:2024/04/29 15:50

最近web端做微信分享的时候第一次分享没问题关键是分享以后点击分享的文章再次分享的时候失败,

找了一下原因发现微信在分享的时候在链接后面加了参数&from=timeline&isappinstalled=0导致生成的签名不一致所以分享的url应该读取request中的参数拼接在一起

工具类

public static String createParams(HttpServletRequest request) {        StringBuffer sb = new StringBuffer();        @SuppressWarnings("unchecked")        Enumeration<String> names = request.getParameterNames();        while (names.hasMoreElements()) {            String name = names.nextElement();            if (sb.length() > 0) {                sb.append("&");            }            sb.append(name);            sb.append("=");            sb.append(request.getParameter(name));        }        String params = sb.toString();        if (StringUtils.isNotEmpty(params)) {            params = "?" + params;        }        return params;    }
0 0