我有一个linux命令来创建参数值,但我不知道如何在nodejs中转换它。这是linux命令行:
echo -n '2147483647/s/link127.0.0.1 secret' | \
openssl md5 -binary | openssl base64 | tr +/ -_ | tr -d =
和在终端
中执行时的结果_e4Nc3iduzkWRm01TBBNYw
请告诉我如何在没有子进程的情况下在nodejs中创建它。
答案 0 :(得分:0)
可以使用exec或spawn在Node.js中执行任何终端命令。在这种情况下,exec可能是你最好的选择。按照下面的模式,只需替换我的命令,用你想要的任何命令列出/ home / username中的目录:
var exec = require('child_process').exec;
exec("ls /home/username", function (error, stdout, stderr) {
console.log("error: ", error);
console.log("stdout: ", stdout);
console.log("stderr: ", stderr);
});
答案 1 :(得分:0)
完成
var mysecretkey = "secret";
var path = "/s/link";
var ip = '127.0.0.1';
var time = '2147483647';
var path = time + path + ip + ' ' + mysecretkey;
var crypto = require('crypto');
var md5sum = crypto.createHash('md5');
var d = md5sum.update(path).digest('base64');
//#echo -n '2147483647/s/link127.0.0.1 secret' | openssl md5 -binary | openssl base64 | tr +/ -_ | tr -d =
var test = d.replace(/\+/g, '-').replace(/\//g, '_').replace(/=/g, '');
console.log(test);