JS-запрос узла не сохраняет текущий сеанс / куки - PullRequest
0 голосов
/ 01 января 2019

Я экспериментировал с использованием Node JS для создания веб-страниц с использованием запроса-обещания, но недавно я обнаружил, что при попытке создать сеанс запроса с использованием одного и того же файла cookie для каждого запроса сеанс запроса не сохраняется.Вот мой код:

var rp = require('request-promise'); //requests module
var jssoup = require('jssoup').default; //crawler

global.useragent = 'Mozilla/5.0 (Windows NT 6.1; Win64; x64)';

function kithCheckoutLink(bypass, link){
    var cookiejar = rp.jar()
    if (bypass == 1){
         global.options =  {
            uri: 'https://kith.com/cart/18914757476421:1',
            jar: cookiejar,
            followAllRedirects: true,
            headers:{
                'User-Agent':useragent
            },
        }
        console.log(options.uri);
        bypassrequest = rp.get(options, function(error, response){
            var bypasslink = bypassrequest.uri.href;
            console.log(bypasslink);
            options.uri = 'https://kith.com/cart/change?line=1&quantity=0';
            removerequest = rp.get(options, function(error, response){
                console.log(removerequest.uri.href);

            });
        });

    }

};

kithCheckoutLink(1, 'www.google.com'); 

Итак, когда я запускаю код, все работает нормально до второго запроса GET.Я получаю огромную ошибку «неверный запрос», говорящую «невозможно обновить пустую корзину».Дело в том, что с первым GET-запросом я успешно добавил товар в корзину на веб-сайте, и консоль регистрирует ссылку оформления заказа, чтобы доказать это.Я даже попробовал это вручную, используя мой браузер Chrome, и у меня не было проблем с очисткой корзины.Это означает, что проблема должна заключаться в том, что файлы cookie не передаются на каждый запрос, как если бы файлы cookie передавались, я не получил бы ошибку, так как моя корзина уже была пуста заранее, так как я только что добавил продукт в корзину.Что я тут не так делаю?

...