我想做一个函数来获取fingerprint2.js的结果

Fingerprint2是一种现代且灵活的浏览器指纹库http://valve.github.io/fingerprintjs2/
用法:

new Fingerprint2().get(function(result, components){
  console.log(result); //a hash, representing your device fingerprint
  console.log(components); // an array of FP components
});

我为获得new Fingerprint2().get(function(result, components){之外的Fingerprint2结果所做的任何尝试均失败。
像Global vars和cookie,因为Fingerprint2()。get(...)是异步的
可以像函数一样编写以获取Fingerprint2结果吗?
例如:
var secure = getmefingerprint2();

最佳答案

利用ES2017功能async/await,您可以像这样使用Fingerprint2.getPromise():

(async () => {
    const components = await Fingerprint2.getPromise();
    const values = components.map(component => component.value);
    const murmur = Fingerprint2.x64hash128(values.join(""), 31);
    console.log('fingerprint:', murmur);
)()

Fingerprint2 Doc中查看 get和getPromise

关于javascript - 如何获得类似功能的fingerprint2结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39932716/

10-11 12:39