2014-01-30 42 views
1

On NODE JS我在3个不同的端口上运行3个应用程序, 让我们把它们作为端口3000,3007,3005。节点js中的本地存储/ Cookie

现在我的目标是我想在3000端口设置的localStorage/cookie变量,并希望得到在应用此本地存储值在端口3005和端口3007

和我的文件夹结构运行的是:

nodep/ 
     |-app.js(runs at 3000 port) 
     |-chat2.js(runs at 3005 port) 
     |-chat3.js(runs at 3007 port) 

我该如何做到这一点。

+0

的localStorage/Coookies存储在浏览器中。所以node.js与它无关。我想你所需要的只是跨域访问localStorage/Cookies。 –

+0

您是否使用任何http-server框架库?喜欢快递。 – user568109

+0

@alexeyten你的猜测是正确的 –

回答

0

用于读取/设置cookie服务器端您需要一些HTTP服务器。你也应该使用Cookie-Module,因为它使得它更容易。

你的代码应该是这样的:

var http = require('http'), 
    Cookies = require('cookies'); 

http.createServer(function (request, response) { 
    var cookies = new Cookies(request, response); 

    // get a cookie value 
    cookies.get('yourCookieKey'); 

    // set a cookie value 
    cookies.set('yourCookieKey', 'yourCookieValue'); 

    response.end(200); 
}); 

请记住,有浏览器和设置在一些浏览器本身有其拒绝第三方Cookie。

读取/设置localStorage中/的值是不可能的。

你真正想要做的可能是你的客户端(浏览器)和你的服务器(你的app.js)之间的一些“数据交换”。

对于工作,你可以使用

一)AJAX,大概发送/接收一些JSON数据

B)使用socket.io用于发送数据。 socket.io具有跨域工作的优势。

在这两种情况下,你当然可以店/恢复/同步与localStorage的

有一些最后的选择,如果你真的想一些富数据的客户端,这是breeze.js这会为你提供一些客户端的数据

“数据库”可以与服务器端休息API同步。但我不认为这就是你想要的...

希望帮助一点点,你的问题是有点不清楚/混乱...