Node.js - 如何在http请求中设置cookie
问题描述:
我试过this,但无法使其正常工作。我做了一个jQuery ajax请求,登录到Drupal系统,其中xhrFields
withCredentials
设置为true。服务器返回会话名称和ID。所以我想我的问题是;我如何将这些withCredentials
设置为request
,因为它是通过ajax调用完成的?Node.js - 如何在http请求中设置cookie
var cookie = request.cookie(app.session.sessionName + '=' + app.session.sessionId);
progress(request(url), {
header: {
'Cookie': cookie
}
})
// Access denied [Anonymous user]
答
设置页眉不工作,但我找到了解决方案(这实际上是在docs);
var request = require('request');
var j = request.jar();
var cookie = request.cookie(app.session.sessionName + '=' + app.session.sessionId);
j.setCookie(cookie, url);
request({url: url, jar: j})
//....
后来您可以在end
事件中看到cookie;
//var cookie_string = j.getCookieString(url);
//console.log('Cookie: ', cookie_string);