2016-06-30 54 views
0

我跟着链接作为如何在sails.js/node.js中实现Evercookie?

https://github.com/truongsinh/node-evercookie

首先在配置/ http.js

创建一个中间件连接,然后跟着链接:

http://samy.pl/evercookie/

结果铬控制台:

Storage mechanism userData returned: undefined<br> 
Storage mechanism cookieData returned: undefined<br> 
Storage mechanism localData returned: 12345<br> 
Storage mechanism globalData returned: undefined<br> 
Storage mechanism sessionData returned: 12345<br> 
Storage mechanism windowData returned: 12345<br> 
Storage mechanism historyData returned: undefined<br> 
Storage mechanism pngData returned: undefined<br> 
Storage mechanism etagData returned: <br> 
Storage mechanism cacheData returned: <br> 
Storage mechanism dbData returned: 12345<br> 
Storage mechanism lsoData returned: undefined<br> 
Storage mechanism slData returned: undefined<br> 

在前端Java脚本的它给正确的ID在警告我设置。

在服务器端:我得到的cookieValue =未定义

的Kindle帮助我,这是否是正确的做法还是我缺少任何之间。

回答

0

我尝试了很多,然后使用网站“http://samy.pl/evercookie/”本身evercookie.js文件。在给定的HTTP中间件

然后进行如下变化:

var evercookie = require('evercookie'); 
    var cookieParser = require('cookie-parser'); 
    app.use(cookieParser()); 
    app.use(evercookie.backend()); 
    app.use(cookieParser()); 
    app.use(require('connect').static(__dirname +'../public')); // be careful, you may want to use path.join instead! 
    app.use(evercookie.backend({ 
     pngCookieName: 'evercookie_png', 
     etagCookieName: 'evercookie_etag', 
     cacheCookieName: 'evercookie_cache', 
     pngPath: '/path/evercookie_png.php', 
     etagPath: '/path/evercookie_etag.php', 
     cachePath: '/path/evercookie_cache.php' 
    })); 

注:“路径”是从那里ec.set和ec.get方法被调用的位置。 现在我可以获取etagData,cacheData和cacheData的cookie数据。