微信支付开发交易通知实例


Posted in PHP onJuly 12, 2016

一、交易通知

用户在成功完成支付后,微信后台通知(POST)商户服务器(notify_url)支付结果。商户可以使用notify_url的通知结果进行个性化页面的展示。

对后台通知交互时,如果微信收到商户的应答不是success或超时,微信不为通知失败,微信会通过一定的策略(如30分钟共8次)定期重新发起通知,尽可能提高通知的成功率,但微信不保证通知最终能成功。

后台通知通过请求中的 notify_url ?行,采用 POST 机制。

同时,在postData中还将包含xml数据。

二、交易结果获取与响应

根据官方文档,创建notice.php用于通知结果。

程序内容如下所示:

<?php

foreach ($_GET as $key=>$value) 
{
 logger("Key: $key; Value: $value");
}
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
logger($postStr);

if (isset($_GET)){
 echo "success";
}

//日志记录
function logger($log_content)
{
 $max_size = 100000;
 $log_filename = "log.xml";
 if(file_exists($log_filename) and (abs(filesize($log_filename)) > $max_size)){unlink($log_filename);}
 file_put_contents($log_filename, date('H:i:s')." ".$log_content."\r\n", FILE_APPEND);
}
?>

上述程序的作用是:

获取post到url的通知,他们以GET变量形式

获取post的XML数据包

返回成功消息 success

将notice.php的完整路径放入JS API支付的notice url中。

$wxPayHelper->setParameter("notify_url", http://www.doucube.com/wxpay/notice.php);

这样当交易完成后,该url将收到通知,并记录在日志文件中,我们的测试如下所示:

获得的GET变量及XML如下所示:

Key: bank_billno; Value: 201405273540085997
Key: bank_type; Value: 2011
Key: discount; Value: 0
Key: fee_type; Value: 1
Key: input_charset; Value: GBK
Key: notify_id; Value: Gx8ov6tT6_yaARrtKG6RFZ4KiVtKqVnJzvulFlteJ3dhBg38iRtKs0pTXXfgh8WnH15mIhG6j65ggbzzYguh1mutG3B5oHsK
Key: out_trade_no; Value: JfuKdiBig4zZnE4n
Key: partner; Value: 1234567890
Key: product_fee; Value: 1
Key: sign; Value: 08876C4A9F7A36A9EA972C211C122362
Key: sign_type; Value: MD5
Key: time_end; Value: 20140527194139
Key: total_fee; Value: 1
Key: trade_mode; Value: 1
Key: trade_state; Value: 0
Key: transaction_id; Value: 1218614901201405273313473135
Key: transport_fee; Value: 0

<xml><OpenId><![CDATA[o0pk9uIVnlY-fJkzFKEbQ6LJ4cFc]]></OpenId>
<AppId><![CDATA[wx0000000000000000]]></AppId>
<IsSubscribe>1</IsSubscribe>
<TimeStamp>1401190899</TimeStamp>
<NonceStr><![CDATA[iOb2flJ0ILFAmBqJ]]></NonceStr>
<AppSignature><![CDATA[66678894aae680ba140e18e66d1295dfadabd9ab]]></AppSignature>
<SignMethod><![CDATA[sha1]]></SignMethod>
</xml>

而在微信窗口中将收到OK的弹出窗

微信支付开发交易通知实例

以上就是对微信支付开发交易通知的资料整理,谢谢支持!

PHP 相关文章推荐
phpwind中的数据库操作类
Jan 02 PHP
PHP实时显示输出
Oct 02 PHP
浅谈PHP 闭包特性在实际应用中的问题
Oct 30 PHP
php获取汉字首字母的函数
Nov 07 PHP
解密ThinkPHP3.1.2版本之独立分组功能应用
Jun 19 PHP
PHP跨平台获取服务器IP地址自定义函数分享
Dec 29 PHP
PHP实现支持SSL连接的SMTP邮件发送类
Mar 05 PHP
php自定义urlencode,urldecode函数实例
Mar 24 PHP
如何在HTML 中嵌入 PHP 代码
May 13 PHP
php数组冒泡排序算法实例
May 06 PHP
PHP使用PHPExcel实现批量上传到数据库的方法
Jun 08 PHP
PHP 枚举类型的管理与设计知识点总结
Feb 13 PHP
php实现的debug log日志操作类实例
Jul 12 #PHP
PHP数据库表操作的封装类及用法实例详解
Jul 12 #PHP
WordPress过滤垃圾评论的几种主要方法小结
Jul 11 #PHP
php处理带有中文URL的方法
Jul 11 #PHP
PHP实现JS中escape与unescape的方法
Jul 11 #PHP
php处理复杂xml数据示例
Jul 11 #PHP
php的debug相关函数用法示例
Jul 11 #PHP
You might like
Terran建筑一览
2020/03/14 星际争霸
php 团购折扣计算公式
2011/11/24 PHP
Zend Framework教程之Zend_Layout布局助手详解
2016/03/04 PHP
PHP创建word文档的方法(平台无关)
2016/03/29 PHP
PDO::errorInfo讲解
2019/01/28 PHP
如何取得中文输入的真实长度?
2006/06/24 Javascript
疯掉了,尽然有js写的操作系统
2007/04/23 Javascript
Jquery中获取iframe的代码
2011/01/11 Javascript
鼠标选择动态改变网页背景颜色的JS代码
2013/12/10 Javascript
jquery遍历checkbox的注意事项说明
2014/02/21 Javascript
JS中字符串trim()使用示例
2015/05/26 Javascript
JavaScript基础语法之js表达式
2016/06/07 Javascript
Node.js connect ECONNREFUSED错误解决办法
2016/09/15 Javascript
浅谈Angular 中何时取消订阅
2017/11/22 Javascript
基于JavaScript 性能优化技巧心得(分享)
2017/12/11 Javascript
新手如何快速理解js异步编程
2019/06/24 Javascript
JavaScript实现打字游戏
2021/02/19 Javascript
phpsir 开发 一个检测百度关键字网站排名的python 程序
2009/09/17 Python
python实现获取客户机上指定文件并传输到服务器的方法
2015/03/16 Python
Python 登录网站详解及实例
2017/04/11 Python
windows下python安装paramiko模块和pycrypto模块(简单三步)
2017/07/06 Python
python爬虫基本知识
2018/03/05 Python
Python基于xlrd模块操作Excel的方法示例
2018/06/21 Python
Python基于Tkinter模块实现的弹球小游戏
2018/12/27 Python
PyQt打开保存对话框的方法和使用详解
2019/02/27 Python
Pytorch Tensor的索引与切片例子
2019/08/18 Python
python实现在多维数组中挑选符合条件的全部元素
2019/11/26 Python
详解字符串在Python内部是如何省内存的
2020/02/03 Python
Python 中的pygame安装与配置教程详解
2020/02/10 Python
IE8下CSS3选择器nth-child() 不兼容问题的解决方法
2016/11/16 HTML / CSS
局域网标准
2016/09/10 面试题
如何利用find命令查找文件
2015/02/07 面试题
工程资料员岗位职责
2014/03/10 职场文书
党委干部批评与自我批评发言稿
2014/09/28 职场文书
详解Html5项目适配系统深色模式方案总结
2021/04/14 HTML / CSS
奥特曼十大神器:奥特手镯在榜,第一是贝利亚的神器
2022/03/18 日漫