我想在我的第一个url请求完成后立即重定向到另一个url。原因是因为要打开第二个url,它需要第一个url会话cookie。这意味着第二个网址只能在该操作之前打开第一个网址才能打开。重定向节点请求内的URL
var request = require('request');
var j = request.jar();
request({
url: first_url,
jar: j,
json: true
}, function (error, response, body) {
if (!error && response.statusCode === 200) {
var cookies = j.getCookieString(first_url);
console.log("1st url cookie: "+ cookies);
request(second_url, function(body) {
var cookies2 = j.getCookieString(second_url);
console.log("2st url cookie: "+ cookies2);
console.log(body);
})
我修改了我的代码,如上所示传递会话cookie。但是,我的第二个网址仍然无法打开。我的控制台输出显示这两个网址都有相同的会话ID,所以我只假设会话cookie正确传递。
第一URL的Cookie:JSESSIONID = DD4ACC4D65F024BD06D53A648A5B4DE3
2ST URL的Cookie:JSESSIONID = DD4ACC4D65F024BD06D53A648A5B4DE3
{[错误:读ECONNRESET]代码: 'ECONNRESET',错误号: 'ECONNRESET',系统调用: '读' }
我验证会话cookie的方式在我的项目中需要首先在浏览器上打开第一个URL,然后复制并粘贴第二个URL链接以打开第二个链接。如果没有启动第一个网址,第二个链接将无法打开并最终超时请求。
请再次咨询,也许我不看正确的方向。
可能重复[如何在NodeJS中维护请求会话](http://stackoverflow.com/questions/19936705/how-to-maintain-a-request-session-in-nodejs) –