qq_39464862
qq_39464862
采纳率45.9%
2017-07-14 09:36 阅读 1.4k

微信支付页面监听错误事件 出现'invalid signature'

wx.error(function (res) {
if(res.errMsg.indexOf("invalid signature") > 0 )
{
alert("无效的签名,需要更新");
}
else{alert(res.errMsg);}
});
在支付页面弹出错误提示:无效的签名,需要更新,求大神告知错误原因

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • 已采纳
    morgerton 白萝卜blb 2017-07-14 09:46

    这个 你这部分代码就是 弹出的框的内容,你得看看监听的接口的问题,不应该找这里的问题。

    点赞 评论 复制链接分享
  • github_37125043 CN-cheng 2017-07-14 09:55
    点赞 评论 复制链接分享
  • qq_39464862 qq_39464862 2017-07-14 10:15
       /// <summary>
        /// 获取微信支付JS包
        /// </summary>
        /// <param name="repayId">预支付ID</param>
        /// <returns></returns>
        public wxHandleModel.wxPayconfig GetwxPay(string repayId)
        {
            wxHandleModel.wxPayconfig wxpayconfig = new wxHandleModel.wxPayconfig();
            string package = string.Format("prepay_id={0}", repayId);
            wxpayconfig.package = package;
            wxpayconfig.timestamp = ConvertDateTimeInt(DateTime.Now);
            string nostr = GenerateCheckCode(16);
            wxpayconfig.nonceStr = nostr;
            wxpayconfig.signType = "MD5";
            string stringA = string.Format(@"appid={0}&nonceStr={1}&package={2}&signType={3}&timeStamp={4}&key={5}"
                , appid, wxpayconfig.nonceStr, wxpayconfig.package, wxpayconfig.signType, wxpayconfig.timestamp, appkey);
            wxpayconfig.paySign = MD5(stringA).ToUpper();
            return wxpayconfig;
        }
    
                这个是获取支付签名的
    
    点赞 评论 复制链接分享
  • qq_39464862 qq_39464862 2017-07-14 10:16
        /// <summary>
        /// 获取签名
        /// </summary>
        /// <returns>sin签名</returns>
        public string getSin(Hashtable ParametersTosin,string appkey)
        {
            StringBuilder sb = new StringBuilder();
            ArrayList akeys = new ArrayList(ParametersTosin.Keys);
            akeys.Sort();
            foreach (string k in akeys)
            {
                string v = (string)ParametersTosin[k];
                if (null != v && "".CompareTo(v) != 0 && "sign".CompareTo(k) != 0 && "key".CompareTo(k) != 0)
                {
                    sb.Append(k + "=" + v + "&");
                }
            }
            sb.Append("key=" + appkey);
            string sign = MD5(sb.ToString()).ToUpper();
            return sign;
        }
    
    点赞 评论 复制链接分享

相关推荐