Редактировать и воспроизводить XHR chrome / firefox и т. д.?

Я искал способ изменить запрос XHR, сделанный в моем браузере, а затем воспроизвести его снова. Скажем, у меня есть полный запрос POST в моем браузере, и единственное, что я хочу изменить, это небольшое значение, а затем воспроизвести его снова. Это будет намного проще и быстрее сделать прямо в браузере.

Я google немного вокруг, и не нашел способ сделать это в Chrome или Firefox. Есть ли способ сделать это в одном из этих браузеров, или, может быть, в другом один?

5 ответов


Chrome:

один из способов сделать это в Chrome может быть скопировать запрос как завиток в сетевой панели инструментов разработчика и воспроизвести его с вашими изменениями в терминале, предполагая, что у вас есть . См. захват:

enter image description here

Если вы ищете "рабочий процесс all-in-browser", вы можете установить расширение с именем "DevTools terminal" , которое встроит ваш локальный терминал в браузер.

Firefox:

Firefox имеет это встроенное. Вы можете внести изменения и повторно отправить XHR прямо с сетевой панели. Захват ниже взят из Firefox 36:

enter image description here


мои два предложения:

  1. плагин почтальона Chrome + С Почтовый Перехватчик Плагин. Дополнительная Информация:Postman Capturing Requests Docs

  2. Если вы находитесь в Windows, то скрипач Telerik является вариантом. Он имеет опцию композитора для воспроизведения http-запросов, и это бесплатно.


Chrome теперь имеет Копировать как fetch в версии 67:

Копировать как fetch

щелкните правой кнопкой мыши сетевой запрос, а затем выберите Копировать > Копировать Как Fetch скопировать fetch() - эквивалентный код для этого запроса в буфер обмена.

https://developers.google.com/web/updates/2018/04/devtools#fetch

пример вывода:

fetch("https://stackoverflow.com/posts/validate-body", {
  credentials: "include",
  headers: {},
  referrer: "https://stackoverflow.com/",
  referrerPolicy: "origin",
  body:
    "body=Chrome+now+has+_Copy+as+fetch_+in+version+67%3A%0A%0A%3E+Copy+as+fetch%0ARight-click+a+network+request+then+select+**Copy+%3E+Copy+As+Fetch**+to+copy+the+%60fetch()%60-equivalent+code+for+that+request+to+your+clipboard.%0A%0A&oldBody=&isQuestion=false",
  method: "POST",
  mode: "cors"
});

разница в том, что Копировать как cURL также будет включать все заголовки запросов (например, Cookie и Accept) и подходит для воспроизведения запроса за пределами Chrome. The fetch() код подходит для воспроизведения внутри того же браузера.


для Firefox проблема решена сама собой. В нем реализована функция "редактировать и повторно отправлять".

Для Chrome расширения Тампер кажется, сделать трюк.


есть несколько способов сделать это, как упоминалось выше, но по моему опыту лучший способ манипулировать запросом XHR и повторно отправить-использовать инструменты chrome dev, чтобы скопировать запрос как запрос cURL (щелкните правой кнопкой мыши на запросе на вкладке "Сеть") и просто импортировать в приложение Postman (гигантская кнопка импорта в левом верхнем углу).