我尝试了以下PHP代码的等效ruby代码。
PHP代码:
var $secretKey = "19535CF3D949D4EF56F8D3D4ED78C505";
$sign=md5 ($post_data.$this->secretKey );
尝试过Ruby代码:
secretKey = "19535CF3D949D4EF56F8D3D4ED78C505"
Digest::MD5.hexdigest(post_data, secretkey)
抛出ArgumentError:错误的参数个数(1表示0)错误。任何人都可以帮助我使用正确的等效ruby代码。
答案 0 :(得分:3)
您需要以与使用PHP中的post_data
运算符相同的方式连接secretkey
和.
值,这样您才能使用将单个字符串传递给MD5摘要函数。
Digest::MD5.hexdigest(post_data + secretkey)
是最简单的方法,但您也可以使用
Digest::MD5.hexdigest(post_data << secretkey)
或
Digest::MD5.hexdigest("#{post_data}#{secretkey}")