README.md in magpie-0.8.6.2 vs README.md in magpie-0.8.8
- old
+ new
@@ -7,33 +7,37 @@
**Copyright**: 2010
**License**: MIT License
-**Latest Version**: 0.8.6.2
+**Latest Version**: 0.8.8
-**Release Date**: 2010-10-20
+**Release Date**: 2010-11-03
快搭
----
sudo gem install magpie
打开终端,输入:
$ mag magpie.yml
-magpie.yml文件用来配置你的商号信息, 假设你在支付宝有个账号:123456, key是:aaabbb, 网银在线有个账号:789789, key是:cccddd, 那么你在magpie.yml中这样写,
+magpie.yml文件用来配置你的商号信息, 假设你在支付宝(alipay)有个账号:123456, key是:aaabbb, 网银在线(chinabank)
+有个账号:789789, key是:cccddd, 财付通(tenpay)有个账号:888666, key是:dddggg, 那么你在magpie.yml中这样写,
alipay:
- ["123456", "aaabbb"]
chinabank:
- ["789789", "cccddd"]
+ tenpay:
+ - ["888666", "dddggg"]
+
**注意!** 如果你输入mag命令报错, 那可能是因为你的电脑缺少一些magpie需要的gem包, 试着使用下面的命令:
- $ sudo gem install activemode
+ $ sudo gem install rack
$ sudo gem install hpricot
mag命令默认会在本地9292端口启动http服务, 你可以用-p选项指定端口
mag -p 2010 magpie.yml
@@ -45,45 +49,116 @@
假设你正在实现支付宝支付的相关代码, 首先启动magpie服务
$ mag magpie.yml
-然后在你开发的商户系统中将支付网关由支付宝的网关`https://www.alipay.com/cooperate/gateway.do`更改为magpie的网关`http://127.0.0.1:9292/alipay`
+上面命令的意思是:用Mongrel启动magpie服务, 服务的mode是snake, 日志文件是magpie.log, 服务的端口是9292
-如果你请求的参数出现错误,你可以通过magpie的日志查看到详细的出错信息, 或者在浏览器上查看出错信息(以xml的格式显示)
+完整的命令是: mag -s mongrel -M snake -L magpie.log -p 9292 magpie.yml
-如果你的支付请求成功magpie将会模拟支付宝的主动通知模式, 给你的商户系统发送通知, 你需要确保发送给magpie的`notify_url`
+然后在你开发的商户系统中将支付网关由支付宝的网关`https://www.alipay.com/cooperate/gateway.do`
-是可用的,magpie将通过这个`notify_url`将支付成功的通知发到你的商户系统中, 这样你就可以避免去支付宝的页面进行真实的支付.
+更改为magpie的网关`http://127.0.0.1:9292/alipay`
-对于网银在线, 将支付网关由网银在线的网关`https://pay3.chinabank.com.cn/PayGate`更改为magpie的网关`http://127.0.0.1:9292/chinabank`
+如果你请求的参数出现错误, 你可以通过magpie的日志查看到详细的出错信息, 或者在浏览器上查看出错信息
+如果你的支付请求成功, magpie将会显示一个成功订单的页面, 然后你点击购买就可以给你自己的商户系统发送
+购买成功的通知了, 你需要确保你商户系统的`notify_url`是可用的,magpie将通过这个`notify_url`将支付
+
+成功的通知发到你的商户系统中, 这样你就可以避免去支付宝的页面进行真实的支付.
+
+对于网银在线(chinabank), 将支付网关由网银在线的网关`https://pay3.chinabank.com.cn/PayGate`更改为
+
+magpie的网关`http://127.0.0.1:9292/chinabank`
+
+对于财付通(tenpay), 将支付网关由财付通的网关`http://service.tenpay.com/cgi-bin/v3.0/payservice.cgi`
+
+更改为magpie的网关`http://127.0.0.1:9292/tenpay`
+
+
+Magpie启动模式
+-------------
+
+**1. bird mode**
+
+ $ mag -M bird magpie.yml
+
+写ruby代码的人一般都是测试控, 这个bird模式主要是为他们提供.以支付宝(alipay)为例, 开发者将支付
+
+参数提交到http://127.0.0.1:9292/alipay, 出错信息将以xml格式反馈给开发者,如果提交成功, 成功
+
+信息同样以xml格式反馈给开发者, 同时magpie会自动将购买成功的消息通知到开发者的商户系统中,并返回
+
+商户系统的处理结果.
+
+在bird模式下,开发者需要确保magpie.yml中的商号信息是真实有效的,也就是在alipay上实际注册过的,因为
+
+magpie在bird模式下会将开发者提交的支付参数往alipay的实际网关`https://www.alipay.com/cooperate/gateway.do`
+
+发送一次.
+
+网银在线(chinabank), 财付通(tenpay)的模拟情况与之类似.
+
+
+**2. snake mode**
+
+ $ mag -M snake
+
+这是magpie默认的启动模式,以支付宝(alipay)为例, 开发者将支付参数提交到http://127.0.0.1:9292/alipay
+
+出错信息以普通html页面显示,如果提交成功, 开发者将看到订单的详细信息, 然后开发者可以点击支付按钮进行支付
+
+测试, 最终magpie将返回开发者商户系统的处理结果.
+
+网银在线(chinabank), 财付通(tenpay)的模拟情况与之类似
+
+
+其他语言开发者
+------------
+
+如果你使用其他开发语言, 比如php, java等,需要使用magpie, 必须首先搭建ruby执行环境才能运行mapgie.
+
+你可以看看这篇资料[http://www.javaeye.com/topic/43228](http://www.javaeye.com/topic/43228)
+
+在这篇资料,你看到"然后就可以安装rails了,"这里就可以停止了, 然后开始搭建ruby执行环境. 我鼓励你能
+
+把整篇资料看完, 搭建好ruby on rails开发环境, 这样你就可以用rails开发项目了.
+
+
+
+
支持的支付平台
--------------
- 支付宝(alipay)
- 网银在线(chinabank)
+- 财付通(tenpay)
使用的项目
--------
* [饭票](http://piao.fantong.com)
* [饭团](http://tuan.fantong.com)
感谢
----
* potian [Rack编程](http://www.javaeye.com/topic/605707)的作者
-* liuzihua
+* liuzihua liuzihua8@gmail.com
Changelog
---------
- **2010-10-20**: 0.8.6.1 release
- 支持网银在线
-- **2010-10-20**: 0.8.6.1 release
+- **2010-10-20**: 0.8.6.2 release
- 改善README.md的可阅读性
+
+- **2010-11-03**: 0.8.8 release
+ - 增加财付通的支持
+ - 增加snake, bird两个启动模式
+ - 增加日志功能
Copyright
---------