Node.js 如何在节点js fort payumoney支付网关集成中创建哈希键?

Node.js 如何在节点js fort payumoney支付网关集成中创建哈希键?,node.js,hash,payumoney,Node.js,Hash,Payumoney,如何在节点js中为payumoney支付网关集成创建哈希键? 我安装了 npm安装sha512 我使用的脚本: var txnid = buffer.toString('hex').toUpperCase(); var string = marchentKey + '|' + txnid + '|' + amount + '|' + productinfo + '|' + firstname + '|' + email + '|' + udf1 + '|' + udf2 + '|||||||||

如何在节点js中为payumoney支付网关集成创建哈希键? 我安装了

npm安装sha512

我使用的脚本:

var txnid = buffer.toString('hex').toUpperCase();
var string = marchentKey + '|' + txnid + '|' + amount + '|' + productinfo + '|' + firstname + '|' + email + '|' + udf1 + '|' + udf2 + '|||||||||' + salt;
var hash = sha512(string);

在angular js中给出了密钥不正确的错误。

节点已经有加密模块,所以您不需要安装其他模块

var crypto=require('crypto');
var now= (new Date()).valueOf().toString();
var random = Math.random().toString();
crypto.createHash('sha1').update(now+ random).digest('hex'); //this is your unique hash
hash=sha512(“键| 5937f928cbb2a51c4fe8c4c1 | 10 |购物|测试|test@test.com|||||||||||盐);
函数sha512(str){
返回crypto.createHash('sha512').update(str.digest('hex');
}


试试这个。替换上面字符串中的merchantId(键)和SALT,从angular生成payuMoney哈希

1) 安装
npm i js-sha512

2) 在要使用的组件中导入

从'js-sha512'导入*为sha512

3) 在下面的函数中使用它


var hash=sha512.sha512('pass form data with |');

谢谢Anshman!我需要使用SALT和MERCHANT key来创建payumoney散列键,而不是now和random,您可以使用自己的变量SALT和MERCHANT key。我注意到表单post值和散列键生成函数使用的值应该是相同的。