app微信支付统一下单
php版的
需要注意的地方记录一下
- 签名的加密方式为
sha256
- 返回给客户端的参数全小写,不是驼峰
- 返回给客户端调起支付的签名统一下单的加密方式要一样,即
sha256
- open_id不用传(传了还有可能报错说app_id和open_id不一致)
全部代码 参数记得替换
public function payFor(){header("Access-Control-Allow-Origin: *");header("Access-Control-Allow-Methods:POST,GET");header("Access-Control-Allow-Headers:x-requested-with,content-type");header("Content-type:text/json;charset=utf-8");//正式$appid = ''; $secret = '';$mch_id = '';//商户号$str="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";$nonce_str = "";for($i=0;$i<32;$i++){$nonce_str .= $str{mt_rand(0,32)}; //生成php随机数}//随机字符串$timeStamp = strval(time());//return $timeStamp;$body = '椰子游app钻石充值微信支付';//商品描述$out_trade_no = $timeStamp.'mshJSAPI'.$str{mt_rand(0,14)};//商户订单号$total_fee = 1;//标价金额$spbill_create_ip = '';$notify_url = '';//通知地址$trade_type = 'APP';//交易类型$pay_url = "https://api.mch.weixin.qq.com/pay/unifiedorder";$map = ['appid'=>$appid,'mch_id'=>$mch_id,'nonce_str'=>$nonce_str,'body'=>$body,'out_trade_no'=>$out_trade_no,'total_fee'=>$total_fee,'spbill_create_ip'=>$spbill_create_ip,'notify_url'=>$notify_url,'trade_type'=>$trade_type,'sign_type'=>'HMAC-SHA256',];$key = '';$sign = $this->sign($map,$key,$type ='sha256');//dump($sign);$map['sign'] = $sign;//$XML = $this->MapConvertXML($map);//$arr = array('name' => 'PhalApi');$xml = \PhalApi\Tool::arrayToXml($map);//return json_encode('<xml><name>PhalApi</name></xml>');//return $map;$res = '';try {$curl = new \PhalApi\CUrl(2);$res = $curl->post($pay_url, $xml, 6000000);} catch (\PhalApi\Exception\InternalServerErrorException $ex) {return 'error';}$bean = \PhalApi\Tool::xmlToArray($res);//return $bean;$returnarray = ['appid'=>$appid,'partnerid'=>$mch_id,'prepayid'=>$bean['prepay_id'],'noncestr'=>$nonce_str,'timestamp'=>(int)$timeStamp,'package'=>'Sign=WXPay',];$sign = $this->sign($returnarray,$key,$type ='sha256');//dump($sign);$returnarray['sign'] = $sign;//return 1;return $returnarray;}
app微信支付统一下单相关推荐
- APP 对接 java 微信支付统一下单接口
首先插入微信支付的时序图 统一下单时候的请求对象,需要把这个转为xml 文件格式所以需要在pom.xml 文件中导入 .和微信支付的sdk <dependency> <groupId ...
- 微信V3 - 微信支付统一下单 --01
准备工作: private static PrivateKey merchantPrivateKey; static { try { merchantPrivateKey = PemUtil.load ...
- 微信支付 统一下单 字段 body 为中文时 报【签名错误】解决方案(C# SDK)
微信支付 统一下单 字段 body 为中文时 报[签名错误]解决方案(C# SDK) 参考文章: (1)微信支付 统一下单 字段 body 为中文时 报[签名错误]解决方案(C# SDK) (2)ht ...
- SpringBoot实现小程序微信支付统一下单
SpringBoot实现微信支付统一下单 最近做小程序有需要用到微信支付,而在页面拉起微信支付前需要先进行统一下单,然后再返回参数给前端调用微信支付wx.requestPayment.网上参考了很多代 ...
- 【微信支付统一下单】JAVA与XML请求内容体的双向映射
在微信支付统一下单接口文档中,请求体body和微信端返回值都是xml格式的内容. 例如: <!-- 请求微信端的内容 ---> <xml><appid>wx2421 ...
- 微信支付-----统一下单接口对接
本以为没有机会接触鼎鼎大名的支付宝和微信接口(公司本身是做第三方支付的),最近由于一个售货机项目需要对接银联,支付宝和微信接口,因为我自身已经对接了银联,之后根据安排,由我对接微信的相关接口.话不多说 ...
- java微信支付 [统一下单接口] 与 [订单查询接口] 调用成功完整代码与结果
公司最近要搞微信支付, 之前也没有做过, 但是搞过阿里云, 想来也不是很难. 在网上找了很多贴子, 在eclipse里做了5个测试工程, 没有测试成功, 后来下了微信SDK, 也做了个测试样例, 期间 ...
- 微信支付统一下单接口返回数据乱码
做的一个网页扫码支付 微信公众号和商户号都已经申请号,密钥也配置了 验证签名通过,有的朋友问题会处在签名验证错误上,需要MD5加密设置编码格式为UTF-8 我的问题不在这里 统一下单后返回为fail ...
- 微信支付统一下单支付结果回调
在用户支付完过后微信会调用我们给它的异步通知地址返回支付的结果,需要注意的是我们给的通知地址是可以进行外网访问的 我使用的一些工具类方法大多是从官方给的demo,下面是下载地址 https://pay ...
最新文章
- 当当的羊毛又该剪了!官方活动基础上的额外优惠券,速领!
- hdu 3671 Boonie and Clyde
- 基于verilog的洗衣机设计
- 前端学习(1965)vue之电商管理系统电商系统之渲染添加参数的按钮
- mysql8以上的连接配置
- consul命令行查看服务_Go语言微服务架构实战:第十三节 微服务管理--Docker安装及运行consul节点...
- C# winfrom单击事件弹出浏览器
- html如何导入字体样式表,导入html字体及其样式变体?
- 电商后台管理系统——权限管理模块
- 3、圆周运动与椭圆运动
- 如何用latex高效写毕业论文(超简明+实用经验分享)
- 邮件内容安全刻不容缓
- WIN10 运行cmd显示“系统无法找到指定的路径”
- Java题-古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?
- GD32E230开发笔记-GD32选型
- 有人考过阿里云大数据助理工程师认证(ACA)从而能分享心得攻略吗?
- 51Nod 2069 牛奶 c/c++题解
- 【毕业设计_课程设计】基于网络爬虫的新闻采集和订阅系统的设计与实现(源码+论文)
- 北京2016计算机应用自考,02316自考全国2016年4月计算机应用技术试题.doc
- 如何取消IE“已限制此网页运行可以访问计算机的脚本或ActiveX控件”