微信支付无法连接服务器,微信支付无法调起
您好,后台查不到您的具体错误信息,目前从报错信息来看,属于小细节问题,请仔细按照我给您发的仔细排查,请参考:首先应该检查app打包时使用的签名文件的MD5的值是否一样,如果这个MD5的值跟微信开放平台填写的值是一个的话就应该跟服务器交流核对noncestr的值是否一至,我此次出现的问题是直接把服务器发过来的sign发送给微信了,根据第四条应该重新进行签名,签名方式参考代码如下:
支付拉起代码:参数从服务器获取
public static void sendPayMessage(final String prepayId, final String nonceStr, final String timeStamp, final String sign){
if (!isSupportPay() || !Fanrncho_api.isWXAppInstalled()){
showToast(instance, WX_INFO);
return;
}
PayReq req = new PayReq();
req.appId = "xxxxxxxxxxxxxxxxxxx";//开放平台获取的appid
req.partnerId = "xxxxxxxxx";//此处为商户的商户号 此处也要核对 在微信商户后台获取
req.prepayId = prepayId;
req.nonceStr = nonceStr;
req.timeStamp = timeStamp;
req.packageValue = "Sign=WXPay";
req.sign = sign;
//开始将6个字段进行数据封装
LinkedList signParams = new LinkedList();
signParams.add(new BasicNameValuePair("appid", req.appId));
signParams.add(new BasicNameValuePair("noncestr", req.nonceStr));
signParams.add(new BasicNameValuePair("package", req.packageValue));
signParams.add(new BasicNameValuePair("partnerid", req.partnerId));
signParams.add(new BasicNameValuePair("prepayid", req.prepayId));//这个字段服务器签名的时候没用到,客户端签名的时候记得加上
signParams.add(new BasicNameValuePair("timestamp", req.timeStamp));
req.sign = genAppSign(signParams);
// 在支付之前,如果应用没有注册到微信,应该先调用IWXMsg.registerApp将应用注册到微信
Fanrncho_api = WXAPIFactory.createWXAPI(instance, "xxxxxxxx");
Fanrncho_api.registerApp(Fanrncho_WX_APP_ID);
Fanrncho_api.sendReq(req);
}
签名生成代码:
/**
* 生成签名
*/
private static String genAppSign(LinkedList list) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < list.size(); i++) {
sb.append(list.get(i).getName());
sb.append('=');
sb.append(list.get(i).getValue());
sb.append('&');
}
sb.append("key=");
sb.append(WX_MCH_KEY);//此处为商户的appkey 此处也要核对 在微信商户后台获取
String appSign = getMessageDigest(sb.toString()).toUpperCase();
return appSign;
}
public final static String getMessageDigest(String buffer) {
String result = null;
try
{
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(buffer.getBytes());
byte b[] = md.digest();
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < b.length; offset++)
{
i = b[offset];
if (i < 0)
i += 256;
if (i < 16)
buf.append("0");
buf.append(Integer.toHexString(i));
}
result = buf.toString();
} catch (NoSuchAlgorithmException e)
{
e.printStackTrace();
}
return result;
}
再以上代码中appid、partnerid、WX_MCH_KEY要进行核对是否一样如果不一样也会导致返回-1,该值的获取方式写在该值的后边了,注意签名方式要和获取prepayid的签名方式相同,就是说服务器的怎么签名客户端也要怎么签名,只不过客户端添加了prepayid这个字段,如果服务器给的签名是添加了prepayid这个字段的签名则可以用服务器给的签名,否则一定要自己重新进行签名。支付的回调就按微信文档中的创建一个wxapi包放在包名下,回调的文件直接用demo中的WXPayEntryActivity即可,名字不可更改。实现onResp方法即可。
微信支付无法连接服务器,微信支付无法调起相关推荐
- 苹果备忘录分享不了微信提示无法连接服务器,微信分享提示universal link 校验不通过...
我的是一个老项目 需要升级友盟分享的sdk(实际上也是微信和qq的sdk); 这边后台给我的配置apple-app-site-association文件的链接, 格式是(www.baidu.com:8 ...
- 苹果备忘录分享不了微信提示无法连接服务器,微信分享接口分享完成后在某些苹果设备上不能正常执行回调...
我写了一个H5项目,现在已经在线上,发现使用ip7 plus ip x等手机在分享给朋友后可以正常完成回调然后执行跳转动作,但是如果分享到朋友圈的话,分享完成后(朋友圈分享成功)不能正常的执行回调完成 ...
- 微信人人商城云服务器,微信支付配置
# **微信支付配置流程** ### **配置支付前需开通相应权限,[点击查看所需开通的权限](http://wiki.rrsc.cn/renrenshopv5/1833366)** * 微信支付,是 ...
- 自动连接 无法连接网络连接服务器,微信提示无法连接到服务器怎么办?微信无法连接服务器怎么解决?...
本文就微信提示无法连接到服务器怎么办?微信无法连接服务器怎么解决?简单介绍一下解决方法. 1.更换接入点,重新连接网络: 2.单击手机上的Menu键,然后选择"设置": 3.单击& ...
- 微信的账号连接服务器失败怎么回事,微信无法连接到服务器的原因和6个解决方法...
原标题:微信无法连接到服务器的原因和6个解决方法 最近有位朋友,在使用微信的时候,发现微信无法连接服务器的问题.其实,有许多朋友都遇到过这个问题,使用微信提示无法连接到服务,请检查你的网络或稍后再试, ...
- 微信收到消息很慢无法连接服务器,微信消息延迟几分钟才收到 微信收消息有延迟的原因及解决办法...
微信收到消息总是延迟怎么回事呢?第一个就是网络延迟,第二个是手机信号不好,第三个就是微信自己设置的问题.下面,我们来看看微信收消息有延迟的原因及解决办法. 微信消息延迟几分钟才收到怎么回事 一.网络延 ...
- 微信收到消息很慢无法连接服务器,微信接收消息有延迟原因及解决办法
微信收到消息总是延迟怎么回事呢?第一个就是网络延迟,第二个是手机信号不好,第三个就是微信自己设置的问题.下面,我们来看看微信收消息有延迟的原因及解决办法. 软件名称:微信安卓版 V8.0.9 for ...
- 苹果备忘录分享不了微信提示无法连接服务器,关于微信分享后,提示“未验证应用”的解决办法(iOS)...
目录 关于微信分享后,提示"未验证应用"的解决办法 1.Universal Link : 1.1 通用链接是iOS9推出的一项新功能,如果你的应用(app)支持通用链接(Unive ...
- 动动同步微信无法连接服务器,动动运动,动动计步器加到微信可是不能连接到微信运动...
怎样把动动计步器数据传到微信运动 点右上角的菜单键,然后选微信排行榜,关注动动计步器的微信公众号,以后运动完毕再点一下动动计步器的微信排行榜,就能同步到微信运动了. 跟微信运动能同步的计步器是什么 当 ...
最新文章
- 激活函数GELU()
- 数据洪流时代的芯片之变
- ReentrantReadWriteLock读写锁
- Finished yeah!
- PHP session的工作原理
- poj3320 尺取法 挑战程序设计竞赛
- copy 收到_离散内存与zero_copy的一些思考
- paip.php 5.0 5.3 5.4 5.5 -6.0的新特性总结与比较
- directx修复工具_Diamond Cut Forensics 10(音频修复软件)分享
- 计算机应用专业的简历自我介绍,计算机应用个人简历模板
- frp内网穿透SSH
- 格密码与最短向量上界
- STM32—串口通讯详解
- np.vstack(tup)使用
- Redis——模拟手机验证码发送
- JavaMail邮件发送不成功的那些坑人情况及分析说明(巨坑跳出专用姿势)
- Windows如何打开命令模式
- java 读取 application配置文件信息
- 个人所得税递归函数C语言,C语言实现 计算个人所得税务2种方法
- ppt中如何合并流程图_简单4招,教你轻松搞定PPT中的流程图!
热门文章
- vsftpd配置PASV模式下指定端口范围,以便配置防火墙
- 【数据结构】 天勤 2.2.6 逆序问题
- Ogg Theora encoder format
- 【财务危机】--2018.8债务
- 机器学习常用六大算法
- <<论文写作>>总结与心得体会
- (八)unity自带的着色器源码剖析之——————Unity3D的全局光照和阴影:下篇(unity3D中的球谐光照和SH球谐函数、unity实时阴影抗锯齿解决方案)
- Scratch 游戏项目学习法 —— 接苹果(七)让苹果回到顶部
- Linux centos 7 深度学习环境搭建(GPU版)
- AD09 DXP保姆级教程系列——001、汉化与新建工程