gpt4 book ai didi

javascript - 在 NodeJs http 请求中传递 cookie

转载 作者:IT老高 更新时间:2023-10-28 22:06:38 26 4
gpt4 key购买 nike

我是 NodeJs 的新手。我正在尝试发出一个 http 请求并传递一个 cookie。我已经阅读了 stackoverflow 上关于它的所有线程,并编写了一段理论上应该可以工作的代码。但是,它没有。

我要做的是将带有商店代码的 cookie 发送到一个在线商店,它会向我显示有关这家商店的信息。如果没有 cookie,它会显示默认的 div 要求选择商店。

这是我的代码:

var request = require('request'),
http = require('follow-redirects').http,
request = request.defaults({
jar: true
});

var cookieString = 'MC_STORE_ID=66860; expires=' + new Date(new Date().getTime() + 86409000);
var str = '';
//var uri = 'example.de';

//var j = request.jar();
var cookie = request.cookie(cookieString);
j.setCookie(cookie, uri);

var options = {
hostname: 'example.de',
path: '/pathexample',
method: 'GET',
headers: {
'User-Agent': 'Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',
'Cookie': cookie,
'Accept': '/',
'Connection': 'keep-alive'
}
//,jar: j
};

http.request(options, function (resp) {
resp.setEncoding('utf8');
console.log(resp.headers);
if (resp.statusCode) {
resp.on('data', function (part) {
str += part;
});
resp.on('end', function (part) {
console.log(str);
});

resp.on('error', function (e) {
console.log('Problem with request: ' + e.message);
});
}
}).end(str);

我假设 cookie 将随我的请求一起发送和接受,但事实并非如此。我也试过jar。我在代码中注释掉了。但是,它似乎也不适合我。当我执行 console.log(resp.headers) 时,我看到了原始 cookie,但不是我的。有人可以给我一个提示吗?

cookie 结构正确。当我在 google chrome 控制台中运行 document.cookie=cookie; 时,它被成功替换。

最佳答案

在您的标题中尝试直接放入 cookieString

headers: {
'User-Agent': 'Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',
'Cookie': cookieString,
'Accept': '/',
'Connection': 'keep-alive'
}

关于javascript - 在 NodeJs http 请求中传递 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24365600/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com