我对node.js的onceler软件包有个问题。我想要访问公共比特皮API。我有两个服务器。一个免费的网络空间(cloud9-ide)和一个虚拟服务器。这是我的密码:
var TOTP = require('onceler').TOTP;
var totp = new TOTP('SECRET_CODE');
console.log(totp.at());
我在我的免费cloud9 get空间上运行它,并得到正确的令牌,我可以使用它来访问比特皮肤的公共API。
现在,我在我的服务器上运行完全相同的代码,并且一直只得到错误的标记。两个服务器都使用相同的onceler包(0.0.5),但它们给了我不同的令牌。原因是什么?
我尝试更新包,或者导入我的cloud9 9服务器的包。但什么都没变。
发布于 2016-06-02 04:55:26
使用totp.now()而不是totp.at()。totp.at接受要生成otp的时间的参数。
解决这一问题的另一种方法是使用免提:
var speakeasy = require("speakeasy");
var token = speakeasy.totp({
secret: config.get("bitSkins").otpCode,
encoding: 'base32'
});
console.log(token);
发布于 2016-08-27 22:11:31
您需要同步您的设备的时钟。
Ubuntu示例:
$ sudo apt-get install ntp -y
https://stackoverflow.com/questions/37262682
复制相似问题