alipay_dualfun 0.2 → 0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/README.md +6 -8
- data/alipay_dualfun.gemspec +1 -1
- data/lib/alipay_dualfun.rb +19 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZDFiNGY4NmI1NDEwMTdjYTMyNWQzMWI1MGYzMWVhYzZkZTU5N2IwYg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZWM2M2I1MDNmZmJkY2VmYjQ3MTViMDU3M2I3MDU1YjBhYTdhOGU5Yw==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
MDRmNzY4ODg3MzI2YzQxNTQzOGY1NWFjYzE2ODhjYTY2OGYxYzE4N2U1OGZl
|
10
|
+
YmZmNjMxNzgwODIxMDJiZTM2ZjgzYjIwNDMxYTZjNTBhMzljYzI5MGMyZTE3
|
11
|
+
M2U5NzJkOTBjZWZmNTc5MWJkMzEyMjk5M2Y0NzdlNjUyZDM4OGQ=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MmNiZjdiMzQzMDFiMTJhMjJlOTBmYWViODRmMjRjMmFjYjY0ZjRlZWI0N2My
|
14
|
+
OWI0YTAzZDc0ZmZjNGUzN2M2NjY2YzM0NjYzODBlNzgxOGUyNDRkYzg4ZWRk
|
15
|
+
YTY2N2U0ODQzYzgxMGU1ODc3NWNjMmNlNmU2ZThlNDRjOWQ1YWM=
|
data/README.md
CHANGED
@@ -30,20 +30,18 @@ And then execute:
|
|
30
30
|
Generate payment url
|
31
31
|
|
32
32
|
options = {
|
33
|
-
:out_trade_no => 'YOUR_ORDER_ID', # 20130801000001
|
34
|
-
:subject => 'YOUR_ORDER_SUBJECCT',
|
35
33
|
:partner => 'PID',
|
36
34
|
:seller_email => 'SELLER_EMAIL',
|
35
|
+
:key => 'SECRET',
|
36
|
+
:out_trade_no => 'YOUR_ORDER_ID', # 20130801000001
|
37
|
+
:subject => 'YOUR_ORDER_SUBJECCT',
|
37
38
|
:price => '10.00',
|
38
39
|
:quantity => 12,
|
39
|
-
:
|
40
|
-
:
|
41
|
-
:notify_url => 'YOUR_ORDER_NOTIFY_URL'
|
40
|
+
:return_url => 'YOUR_ORDER_RETURN_URL', # 可选项
|
41
|
+
:notify_url => 'YOUR_ORDER_NOTIFY_URL' # 可选项
|
42
42
|
}
|
43
43
|
|
44
44
|
Alipay.trade_create_by_buyer_url(options) # 标准双接口
|
45
45
|
# => 'https://mapi.alipay.com/gateway.do?out_trade_no=...'
|
46
46
|
|
47
|
-
|
48
|
-
for his/her order.
|
49
|
-
|
47
|
+
以上除了标注`可选项`的内容之外,其他选项都是 Gem 要求的必填项,缺一不可。用户还可以根据自身特定需求添加可选项,具体可以参考支付宝官方资料包中的 pdf 文件。
|
data/alipay_dualfun.gemspec
CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
4
|
|
5
5
|
Gem::Specification.new do |gem|
|
6
6
|
gem.name = "alipay_dualfun"
|
7
|
-
gem.version = "0.
|
7
|
+
gem.version = "0.3"
|
8
8
|
gem.authors = ["happypeter"]
|
9
9
|
gem.email = ["happypeter1983@gmail.com"]
|
10
10
|
gem.description = %q{This gem can help you integrate Alipay Dual-function Payment.}
|
data/lib/alipay_dualfun.rb
CHANGED
@@ -18,6 +18,7 @@ module AlipayDualfun
|
|
18
18
|
}.merge(stringify_keys(options))
|
19
19
|
|
20
20
|
@secret_key = options['key']
|
21
|
+
@partner = options['partner']
|
21
22
|
options.delete('key')
|
22
23
|
|
23
24
|
check_required_options(options, trade_create_by_buyer_required_options)
|
@@ -51,4 +52,22 @@ module AlipayDualfun
|
|
51
52
|
end.join('&')
|
52
53
|
Digest::MD5.hexdigest("#{query}#{@secret_key}")
|
53
54
|
end
|
55
|
+
|
56
|
+
|
57
|
+
def self.verify_sign?(params)
|
58
|
+
params = stringify_keys(params)
|
59
|
+
params.delete('sign_type')
|
60
|
+
sign = params.delete('sign')
|
61
|
+
|
62
|
+
generate_sign(params) == sign
|
63
|
+
end
|
64
|
+
|
65
|
+
def self.notify_verify?(params)
|
66
|
+
if verify_sign?(params)
|
67
|
+
params = stringify_keys(params)
|
68
|
+
open("https://mapi.alipay.com/gateway.do?service=notify_verify&partner=#{@partner}¬ify_id=#{CGI.escape params['notify_id'].to_s}").read == 'true'
|
69
|
+
else
|
70
|
+
false
|
71
|
+
end
|
72
|
+
end
|
54
73
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: alipay_dualfun
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '0.
|
4
|
+
version: '0.3'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- happypeter
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-10-23 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: This gem can help you integrate Alipay Dual-function Payment.
|
14
14
|
email:
|