2014-01-20 33 views
0

我希望连接到网站(E),并在一个HTML页面访问我的odata服务器使用odata协议。 我已经创建代理网站(E):保持与代理node.js会话

this.use('/data', function(req, res) { 
     var request = require('request'); 
     var apiUrl = process.env.ODATA_SERVER || 'http://localhost:5000'; 
     url = apiUrl + req.url; 
     response = req.pipe(request(url)) 
     response.pipe(res); 
    }); 

这是该方案:用户连接到网站(E),登录和动态页面应该从OData的服务器加载数据。

但问题是:随着浏览器收到数据,我失去了与用户的身份验证会话和E.我如何保持用户登录?

回答

1

我已经在我的身份验证功能添加了这个:

(request({uri: uri, jar: true })).auth(loginName, password, false); 

和现在的作品! :)

更新:请参阅我最后的评论:)

+0

更好的解决方案是使用j = request.jar()设置jar与自定义jar。并设置cookie j.setCookie(cookie,uri,cb); – kildem

+0

它使用由odata-server接收的cookie设置jar – kildem