D1V1网源码站

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 65|回复: 0

[码农经验] 微信支付开发(旧) 全网发布

[复制链接]

购买VIP,消费全返

微信扫码,惊喜不断

发表于 2015-4-18 04:05:35 | 显示全部楼层 |阅读模式
关键字:微信公众平台 微信支付 全网发布
作者:方倍工作室
原文:http://www.cnblogs.com/txw1958/p/wxpay-publish.html

由于微信支付接口更新,本文档已过期,请查看新版微信支付教程。地址 http://www.cnblogs.com/txw1958/category/624506.html

在这篇微信公众平台开发教程中,我们将介绍如何开发实现微信支付的全网发布功能。
全网发布是指微信支付后台最后一步中的维权功能、告警接口、发货接口的检测发布。
212215533469798.jpg
本文分为以下三个部分:
  • 微信支付目录设置
  • 发货接口的调通
  • 维权接口与告警接口的调通

一、微信支付目录设置
微信支付URL的设置和调通微信支付休戚相关。这里我们使用的几个URL设置如下:
支付测试URL:http://www.fangbei.org/wxpay/jsapi/index.php
交易通知URL:http://www.fangbei.org/wxpay/notify/index.php
维权通知URL:http://www.fangbei.org/wxpay/rights/index.php
告警通知URL:http://www.fangbei.org/wxpay/alarm/index.php

二、发货接口的调通调通发货接口之前,需要用户已经有一次交易才能发送,所以先完成一次jsapi支付,其代码如下,

1 <?php 2 include_once("WxPayHelper.php"); 3 $commonUtil = new CommonUtil(); 4 $wxPayHelper = new WxPayHelper(); 5 $wxPayHelper->setParameter("bank_type", "WX"); 6 $wxPayHelper->setParameter("body", "方倍微信支付测试"); 7 $wxPayHelper->setParameter("partner", PARTNERID); 8 $wxPayHelper->setParameter("out_trade_no", $commonUtil->create_noncestr()); 9 $wxPayHelper->setParameter("total_fee", "1");10 $wxPayHelper->setParameter("fee_type", "1");11 $wxPayHelper->setParameter("notify_url", "http://www.fangbei.org/wxpay/notify/index.php");12 $wxPayHelper->setParameter("spbill_create_ip", $_SERVER['REMOTE_ADDR']);13 $wxPayHelper->setParameter("input_charset", "GBK");14 $biz_package=$wxPayHelper->create_biz_package();15 ?>16 <html>17 <meta name="viewport" content="width=device-width,height=device-height,inital-scale=1.0,maximum-scale=1.0,user-scalable=no;">18 <script language="javascript">19     function callpay()20     {21         WeixinJSBridge.invoke('getBrandWCPayRequest',<?php echo $biz_package;?>,function(res){22         WeixinJSBridge.log(res.err_msg);23         alert(res.err_code+res.err_desc+res.err_msg);24         });25     }26 </script>27 <body>28     <button type="button" onclick="callpay()">方倍微信支付测试</button>29 </body>30 </html>

当上述交易完成之后,会向交易通知接口回调URL并带上参数,如下
http://www.fangbei.org/wxpay/notify/index.php?discount=0&fee_type=1&input_charset=GBK&notify_id=aCi-cg4m1nr2bbg-De-MK6hQum8XVsw4mYfYnD5umAiEm_J6P_MalPvOisl2NJdurzTW-TJ9IPcnKmZm5TpKjrc8bXT6PEe0&out_trade_no=5DlIL2s5DGR8147c&partner=1219951701&product_fee=1&sign=A7AEF7AE3B70C54C3C0FF642DD2E2004&sign_type=MD5&time_end=20140808185647&total_fee=1&trade_mode=1&trade_state=0&transaction_id=1219951701201408083366666764&transport_fee=0
同时POST发送了以下XML数据

<xml><OpenId><![CDATA[ocIywt7h42MwHxXx23sJdBpBV7Q8]]></OpenId><AppId><![CDATA[wxa8826d0c0c0b6d6a]]></AppId><IsSubscribe>1</IsSubscribe><TimeStamp>1407495408</TimeStamp><NonceStr><![CDATA[D6iywdqlcdUj8nDQ]]></NonceStr><AppSignature><![CDATA[a99a3cb4f5377dc30cca3f7b362412d7e468e0f4]]></AppSignature><SignMethod><![CDATA[sha1]]></SignMethod></xml>

取出url中的
transaction_id=1219951701201408083366666764out_trade_no=5DlIL2s5DGR8147c
及xml中的
<OpenId><![CDATA[ocIywt7h42MwHxXx23sJdBpBV7Q8]]></OpenId>
将上述3样参数值填充到发货接口中,代码可参考 微信支付开发(6) 发货通知
运行一次,就调通了发货通知接口。

三、维权接口与告警接口的调通维权接口与告警接口的调通非常简单,因为官方只需要接收到有响应。所以都直接在相应的index.php中返回success,代码如下:
<?phpecho "success";?>

四、效果图上述3个接口调通以后,就可以全网发布了。效果如下
171950198343118.jpg

yuanma.d1v1.com欢迎你,分享最好的网站商业源码,提供最好的免费空间申请

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

客服中心
关闭
加入VIP:点击进入
Email:
1184556465@qq.com
社区VIP用户交流QQ专用群234989379
非VIP请勿加此群
VIP
技术支持
消费全返
客服中心

QQ|D1V1网源码站|手机版|小黑屋|D1V1网源码站 ( 沪ICP备05028199号 )

GMT+8, 2024-11-23 08:18 , Processed in 0.082764 second(s), 29 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表