Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.08.2022, 13:52
Аспирант
Отправить личное сообщение для Andy_kun Посмотреть профиль Найти все сообщения от Andy_kun
 
Регистрация: 05.08.2022
Сообщений: 64

Перехват http, fetch, ajax, websocket ответов
Подскажите пожалуйста, позволяет ли JS перехватить запрос и ответы на них, на запросы которые делает браузер при загрузки страницы ?

То есть к примеру загружаю я в браузере javascript.ru, но заранее ставлю некие прослушивали:

-на все http, ajax - запросы и ответы от сервера при загрузке страницы браузером.
-на все websocket - запросы и ответы от сервера при загрузке страницы браузером.

К примеру есть прослушивать .onload() - но он ставится только на http/https - ответы и только на инициированный мной запрос.
Ответить с цитированием
  #2 (permalink)  
Старый 18.08.2022, 15:04
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 457

Смотри в DevTools вкладку Network.
Ответить с цитированием
  #3 (permalink)  
Старый 18.08.2022, 15:27
Аспирант
Отправить личное сообщение для Andy_kun Посмотреть профиль Найти все сообщения от Andy_kun
 
Регистрация: 05.08.2022
Сообщений: 64

Сообщение от Rise Посмотреть сообщение
Смотри в DevTools вкладку Network.
Причем тут DevTools ?
Ответить с цитированием
  #4 (permalink)  
Старый 18.08.2022, 16:14
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,775

Сообщение от Andy_kun
но заранее ставлю некие прослушивали:
А на что вы их ставите? На какой элемент или объект?
Ответить с цитированием
  #5 (permalink)  
Старый 18.08.2022, 16:20
Аспирант
Отправить личное сообщение для Andy_kun Посмотреть профиль Найти все сообщения от Andy_kun
 
Регистрация: 05.08.2022
Сообщений: 64

Сообщение от voraa Посмотреть сообщение
А на что вы их ставите? На какой элемент или объект?
Ну к примеру так:

function my_func(event)
    {
      console.log("my_func")
      console.log(event);
    }



document.addEventListener("DOMContentLoaded", my_func);
document.addEventListener("readystatechange", my_func);
document.addEventListener("onreadystatechange ", my_func);
Ответить с цитированием
  #6 (permalink)  
Старый 18.08.2022, 16:35
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

Service Worker API
Ответить с цитированием
  #7 (permalink)  
Старый 18.08.2022, 16:47
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,597

Такого нет, потому что это в нормальной разработке не нужно. Даля дебага есть инструменты разработчка.

Но если очень хочется и твой скрипт подключается до остальных, то в javascript можно замонкипатчить практически всё.

Можно заменить EventTarget.prototype.addEventListener на свою обёртку над оным и прицепи свою нагрузку к любому назначаемому через addEventListener обработчику(не забыть сделать то же самое для removeEventListener, а то он перестанет работать).
Точно также можно подменить fetch, XMLHttpRequest.prototype.open и т.д. и т.п.

..upd: да, спасибо Vlasenko Fedor, если нужно именно и только сетевое взаимодействие, то можно врезаться через Service Worker.
__________________
29375, 35

Последний раз редактировалось Aetae, 18.08.2022 в 16:50.
Ответить с цитированием
  #8 (permalink)  
Старый 18.08.2022, 17:13
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

JavaScript для профессиональных веб-разработчиков. 4-е международное изд 2022 начиная с страницы 1105
Книга действительно, хорошая и обширная. Одна из лучших, советую
Ответить с цитированием
  #9 (permalink)  
Старый 18.08.2022, 19:55
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 457

Сообщение от Andy_kun
Причем тут DevTools ?
А зачем это еще может быть нужно.
Ответить с цитированием
  #10 (permalink)  
Старый 18.08.2022, 23:31
Аспирант
Отправить личное сообщение для Andy_kun Посмотреть профиль Найти все сообщения от Andy_kun
 
Регистрация: 05.08.2022
Сообщений: 64

Сообщение от Rise Посмотреть сообщение
А зачем это еще может быть нужно.
Не вежливо отвечать вопросом на вопрос
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Книги по Ajax BaVa Учебные материалы 18 18.08.2013 14:05
AJAX, обработка всех ответов dzhiriki AJAX и COMET 1 16.10.2012 14:16
HTTP Status при использовании ajax в jQuery cmd jQuery 1 25.09.2011 22:03
Перехват Ajax ответов от сервера shock-in AJAX и COMET 6 27.01.2011 16:49