Отправка учетных данных с помощью параметров - PUT -Firefox - PullRequest
0 голосов
/ 15 мая 2018

Я вошел на сайт Walmart, и у меня есть корзина для покупок. Когда я добавляю товары в свою корзину, я делаю запрос PUT

PUT запрос изображения - https://i.imgur.com/f9lWqbC.png

и вот так я добавляю товар в корзину.

Теперь, чтобы добраться до сути этого поста. Я пишу расширение для Firefox, а главное - content_script. Основная функция скрипта - сделать такой же запрос, как если бы я нажал кнопку Add to cart на странице Walmart, но я не знаю, как отправить все эти учетные данные, которые можно найти в заголовках запросов.

Очевидно, у меня есть права на отправку правильного запроса, но это только нажатием на кнопку, и моя цель - отправить его через content_script (или фоновый скрипт) с моим расширением.

content_script.js

(function(){
    var params = {"cartItems":[{"offerId":"8E5AE39B44CD467DAC4AAA3A0042110F","quantity":3}]}
    var xhttp = new XMLHttpRequest();   
    xhttp.onreadystatechange = function() {

        if (this.readyState == 4 && this.status == 200) {
            // Typical action to be performed when the document is ready:

            var res = JSON.parse(xhttp.responseText);

            console.log(res);
        }
    };
    xhttp.open("PUT", "https://grocery.walmart.com/api/v3/cart/:GCRT/items", true);
    xhttp.withCredentials = true;
    xhttp.setRequestHeader("Content-Type", "application/json; charset=utf-8");
    xhttp.send(JSON.stringify(params));

})();

Как видите, у меня xhttp.withCredentials установлено значение true, но это не работает, потому что я ничего не получаю на своей консоли.

Правильный вопрос: как доказать Walmart, что этот запрос все еще поступает с моего ПК и моей учетной записи?

1 Ответ

0 голосов
/ 15 мая 2018

Попробуйте отправить больше заголовков, включенных из этого рисунка, но, тем не менее, я не думаю, что вы можете отправить cookie пару ключ-значение, потому что это запрещено в XMLHttpRequest.

...