node.js - NodeJS 请求重置 session

标签 node.js request express-session

我正在从我的服务器向另一台服务器发出发布请求,为此我正在使用库 https://github.com/request/request .

所以,我使用下一个代码:

router.post('/extern/*', function(req, res, next) {
    var path = req.params['0'];
    var input = req.body.text;
    var encript = crypto.encrypt(input);

    request.post(config.petitionServer + path).form({data: encript}).pipe(res)
});

在调用这篇文章之前 session 已经初始化,但是当它执行时, session 被重置。因此,在这种情况下,我丢失了 session 变量中的 csrf 代码。

错误出现在“pipe”函数中,因为如果我调用它,我就会丢失 session ,在其他情况下不会,但我需要使用它。

如何在不丢失实际 session 的情况下使用管道功能?

最佳答案

我相信express-session正在将其 session 保存到cookie中,而您正在做的是将孔响应从config.petitionServer + path管道传输到客户端,以便它覆盖express-session已保存的cookie 。也许仅仅通过管道传递响应的主体会是一个更好的主意?

router.post('/extern/*', function(req, res, next) {
var path = req.params['0'];
var input = req.body.text;
var encript = crypto.encrypt(input);

request.post({url: config.petitionServer + path, formData: {data: encript}, function(err, httpResponse, body))
    res.send(body);
});

关于node.js - NodeJS 请求重置 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35391501/

相关文章:

javascript - 使用 Postman 发帖时 Req 没有​​正文

Node.js中间件和js封装

node.js - nodejs https#request 在相同的 curl 请求成功的地方失败

javascript - promise 不返回请求的值(value)

node.js - Express session MongoDB 存储 : connect-mongo vs connect-mongodb-session

node.js - 如何在 Node js中转发http请求

node.js - 带有 Node.js 的 Twitter 流 API 在请求 : <anonymous> 时出现错误状态代码 401

css - 为什么 CSS 数据 URI 会被记录为 404 请求?

Node.js,Angular,快速 session : Chrome 80 does not save session because of cookie policy (sameSite cookies)

node.js - 无法在node.js中使用 session