PHP MD5 Key的等效ruby代码

时间:2014-07-30 10:44:15

标签: php ruby-on-rails ruby ruby-on-rails-4 ruby-on-rails-3.2

我尝试了以下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代码。

1 个答案:

答案 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}")