我有一个问题,我无法从官方gem正确发布到authorize.net API。深入研究问题后,我可以看到gem生成的请求不完整 - 缺少事务部分。
我已经开了一个问题on github here,但问题似乎如下:
在build_nodes
方法中,调用以下内容:
puts "has_content(value, data): #{has_content(value, data)}"
proc = Proc.new { puts 'PROC CALLED'; build_nodes(builder, value, data) }
builder.send(nodeName, &proc) if has_content(value, data)
当我运行gem的规格时,我得到以下输出:
has_content(value, data): true
PROC CALLED
然后通过irb运行,我得到:
irb(main):011:0> response = tx.create_transaction_auth_capture(100.00, '3...266', '27...61', AuthorizeNet::Order.new())
has_content(value, data): true
=> nil
鉴于proc直接传递给构建器(Nokogiri :: XML),我希望它会被调用,虽然它似乎没有。
有谁知道为什么在这种情况下不会调用proc?
答案 0 :(得分:1)
看起来这已经修复或至少在这里解决了:https://github.com/AuthorizeNet/sdk-ruby/issues/21#issuecomment-70976714