微信接口返回处理结果的几种方法,新手必看!
温馨提示:这篇文章已超过534天没有更新,请注意相关的内容是否还可用!
随着微信支付的普及,越来越多的APP要求支持微信支付。相信大多数开发者也遇到了这种的需求。百度了一下,大家用到最多的是微信支付中个人对商户的支付业务,而很少有人用到微信中商户对个人付款的业务。我今天就遇到了这种的需求,因为从来没有做过,所以没法查资料,可是百度到的资料极少,并且是过时的东西。又问了圈子里的大神,可是你们都没有做过。没办法只有硬着脖子自己拱吧!还好还好,功夫不负有心人啊!已经被我整明白了,现在得空,拿出来跟你们一起分享。
首先给你们吃颗定心丸,所有的东西在你没有用过之前,它都是神秘的,当你用过后来下单php源码,就会看到,也就这么回事。呵呵,开始正题吧!
这是企业付款的文档地址,大家应该先认真看两遍。(虽然有我的指导,也建议你们先看文档,看文档能方便加深大家的理解)
总体策略:1、准备数据;2、把所有的参数连接成一个数组串,然后进行MD5,把MD5得到的一个字符串做为最终一个参;3、把微信提供的安全证,封装到要提交的数据;(商户证书获取方式:4、通过JAVA程序向微信提供的接口POST数据。微信接口返回处理结果。
1、准备数据:所谓的数据就是请求参数,有9个参数是需要的,详细表明见文档()。下面我给你们提供我的实例代码。
//配置接口参数,以下是9个需要的参数。
.put("",appid);//微信分配的公众帐号ID(企业号即因此appId)
.put("mchid",mchid);//微信支付分配的商户号
.put("",uuid);//随机字符串,不长于32位
.put("",);//商户订单号,需保持唯一性
.put("",);//商户appid下,某用户的
.put("","");//:不校验真实姓名
//:强校验真实姓名(未实名认证的客户会校验失败,无法转账)
//:针对已实名认证的客户才校验真实姓名(未实名认证客户不校验,可以转账成功)
.put("",);//企业付款总额,单位为分
.put("desc",desc);//企业付款操作说明信息。必填。
.put("",ip);//读取接口的机器Ip地址
注意map.put()中的key是死的写法,不能改。
2、把所有的参数拼接成一个数组串,然后进行MD5运算,把受到的运算结果下单php源码,做为签名参数,一起POST给接口。详细做法参考文档()
3、为了提升程序的只用性,我把一些受微信影响,会变动的参数写到了配置文件里。配置文件和JAVA文件放在同一目录里就可以了。
安全证书这一步是关键,微信为了提升接口的安全性,所以降低了安全证书,以确保资金的安全。JAVA里用到的证书是格式,大家根据文档里的提醒,去下载相关证书,然后放在自己指定的目录里就可以了。下面是获得证书,并发起POST请求的代码实例。
//获得证书,发送POST请求;
=.("");
=new(newFile(.("")));//从配置文件里加载证书的模式信息
.load(,mchid.());//证书密码是商户ID
.close();
=.().(,mchid.()).build();
sslsf=new(,new[]{"TLSv1"},null,.);
本文来自网络,如有侵权请联系网站客服进行删除
还没有评论,来说两句吧...