Commit 8325f34c266929d0a519b1fdfc8874157ec7f10a
Committed by
GitHub
Exists in
master
Merge pull request #96 from moohao/patch-1
fix xmlify_payload method
Showing
2 changed files
with
2 additions
and
2 deletions
Show diff stats
lib/wx_pay/service.rb
... | ... | @@ -454,7 +454,7 @@ module WxPay |
454 | 454 | |
455 | 455 | def xmlify_payload(params, sign_type = WxPay::Sign::SIGN_TYPE_MD5) |
456 | 456 | sign = WxPay::Sign.generate(params, sign_type) |
457 | - "<xml>#{params.except(:key).map { |k, v| "<#{k}>#{v}</#{k}>" }.join}<sign>#{sign}</sign></xml>" | |
457 | + "<xml>#{params.except(:key).sort.map { |k, v| "<#{k}>#{v}</#{k}>" }.join}<sign>#{sign}</sign></xml>" | |
458 | 458 | end |
459 | 459 | |
460 | 460 | def make_payload(params, sign_type = WxPay::Sign::SIGN_TYPE_MD5) | ... | ... |
test/wx_pay/service_test.rb
... | ... | @@ -48,7 +48,7 @@ class ServiceTest < MiniTest::Test |
48 | 48 | mch_id: 'mch_id', |
49 | 49 | key: 'key' |
50 | 50 | } |
51 | - xml_str = '<xml><body>测试商品</body><out_trade_no>test003</out_trade_no><total_fee>1</total_fee><spbill_create_ip>127.0.0.1</spbill_create_ip><notify_url>http://making.dev/notify</notify_url><trade_type>JSAPI</trade_type><openid>OPENID</openid><app_id>app_id</app_id><mch_id>mch_id</mch_id><sign>172A2D487A37D13FDE32B874BA823DD6</sign></xml>' | |
51 | + xml_str = '<xml><app_id>app_id</app_id><body>测试商品</body><mch_id>mch_id</mch_id><notify_url>http://making.dev/notify</notify_url><openid>OPENID</openid><out_trade_no>test003</out_trade_no><spbill_create_ip>127.0.0.1</spbill_create_ip><total_fee>1</total_fee><trade_type>JSAPI</trade_type><sign>172A2D487A37D13FDE32B874BA823DD6</sign></xml>' | |
52 | 52 | assert_equal xml_str, WxPay::Service.send(:make_payload, params) |
53 | 53 | end |
54 | 54 | end | ... | ... |