我使用payuindia gem将印度网关集成到我的应用程序
https://github.com/payu-india/payuindia/blob/master/lib/payuindia.rb
校验和验证中的代码似乎存在错误。比较哈希的逻辑似乎是错误的。我想要第二只眼来验证这一点。感谢您的帮助。
哈希取决于字段列表。两个列表中的项目顺序不一致。例如,在第一个列表中,txnid是第一个,但在第二个列表中,txnid或者发票是最后一个。同样在第二个列表中有事务状态,但在第一个列表中没有事务状态。如果这两个列表一致,则哈希值相同。如果我错了,请纠正我。
CHECKSUM_FIELDS = [ :txnid, :amount, :productinfo, :firstname, :email, :udf1, :udf2, :udf3, :udf4,
:udf5, :udf6, :udf7, :udf8, :udf9, :udf10 ]
checksum_fields = [transaction_status, *user_defined.reverse, customer_email, customer_first_name, product_info, gross, invoice]
这是一个错误吗?感谢您的任何反馈。