|
1 / 1 / 1
Регистрация: 12.08.2012
Сообщений: 81
|
|
Как браузер узнает на какой http запрос пришел ответ05.04.2018, 11:56. Показов 3360. Ответов 18
Метки нет (Все метки)
Отправил асинхронный запрос на сервер и не дожидаясь ответа отправил второй асинхронный запрос.
На какой из этих запросов придет ответ? Как браузер понимает к какому запросу относится полученный ответ?
0
|
|
| 05.04.2018, 11:56 | |
|
Ответы с готовыми решениями:
18
Как отследить с какой страницы пришёл ответ с гугл формы Как узнать от какого контрола с какой формы пришел запрос? На запрос еще не пришел ответ, а код продолжает дальше выполнятся |
|
707 / 309 / 191
Регистрация: 05.03.2015
Сообщений: 822
|
||||||||
| 05.04.2018, 12:31 | ||||||||
0
|
||||||||
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
|
| 05.04.2018, 21:29 | |
|
посмотрите тему Два запроса ajax -- там есть ссылка на мой работающий пример, где по ответу определяется запрос
0
|
|
|
1 / 1 / 1
Регистрация: 12.08.2012
Сообщений: 81
|
|
| 05.04.2018, 22:44 [ТС] | |
|
Может для каждого http запроса создается новое tcp соединение?
0
|
|
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
|
| 06.04.2018, 08:16 | |
|
lebedun, AJAX использует javascript-объект XMLHttpRequest, у которого изначально определяются:
1) свойство отправки запроса к серверу send и 2) свойство готовности к получению ответа от сервера onreadystatechange на этот запрос Полагаю, что всё работает абсолютно идентично обычному браузерному запросу -- когда отправляется запрос к серверу, вместе с ним отсылается http-заголовок, в котором содержится однозначный "идентификатор" объекта XMLHttpRequest, который этот запрос сформировал и, разумеется, в ответе сервера этот "идентификатор" из http-заголовка продублирован, так что если со страницы ушло даже тысяча запросов к серверу (к серверам), страница гарантированно будет "знать", какой из тысячи полученных ответов какому именно запросу соответствует и ещё раз, "на пальцах" -- положим, на странице имеется сотня тегов <img>, у каждого из которых указан свой src браузер практически одновременно отсылает сотню запросов на получение графических файлов от серверов по указанным в src URL'ам и получает эти графические файлы через разные промежутки времени (время получения зависит и от размера файла, и от доступности серверов, и от скорости интернет-соединения) но страница "знает", какой именно файл из сотни полученных в каком именно теге <img> надо отобразить... и отображает безошибочно и тут ни у кого никаких вопросов не возникает... а с ajax'ом почему-то проблемы... а ведь механизм работы страницы в обоих случаях один и тот же
0
|
|
|
1 / 1 / 1
Регистрация: 12.08.2012
Сообщений: 81
|
|
| 06.04.2018, 12:01 [ТС] | |
|
0
|
|
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
||
| 06.04.2018, 15:50 | ||
|
объект
в DOM страницы объект XMLHttpRequest отправивший запрос, получает об этом отметку в виде внутреннего свойства Получив ответ на запрос, страница в DOM'e находит эту отметку и таким образом однозначно сопоставляет запрос и ответ точно так же полученный графический файл сопоставляется с Image-объектом, отправившим запрос на этот файл
0
|
||
|
1 / 1 / 1
Регистрация: 12.08.2012
Сообщений: 81
|
|
| 06.04.2018, 17:29 [ТС] | |
|
Ответ нашел!!!
Для каждого запроса создается новое TCP соединение со своим сокетом. Т.е. у каждого свой порт и идентификация запроса происходит на уровне TCP, а не HTTP
0
|
|
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
|
| 07.04.2018, 09:01 | |
|
lebedun, ага, и именно поэтому вы данную тему озаглавили "Как браузер узнает на какой http запрос пришел ответ" -- чтоб никто не догадался
0
|
|
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
| 07.04.2018, 19:04 | |
|
0
|
|
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
||
| 07.04.2018, 20:24 | ||
![]() я рад, что ТС'у удалось найти "верный" ответ, заключающийся в том, что объект XMLHttpRequest назван именно так, как он называется, исключительно по приколу
0
|
||
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
| 07.04.2018, 20:27 | |
|
kalabuni, не понимаю к чему этот сарказм. Ведь его ответ действительно верен.
0
|
|
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
|
| 07.04.2018, 20:52 | |
|
0
|
|
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|||
| 07.04.2018, 21:56 | |||
|
А вот ТС попросил пруф на это
0
|
|||
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
||
| 08.04.2018, 00:02 | ||
|
объект XMLHttpRequest, во-первых, отсылает запросы именно по протоколу http и ответы получает по этому же протоколу (письмо отправитель кидает в почтовый ящик, а адресату его приносит почтальон, а как именно письма перемещаются между почтовым ящиком и почтальоном (на мотоцикле, на поезде или на собачьих упряжках, или через tcp) адресата и отправителя особо не волнует во-вторых, объект этот принадлежит документу, а не браузеру, поэтому информация о том, что там решил браузер по поводу принадлежности ответа запросу, она, имхо, для js-программиста вторична, ему важнее -- как документ/страница сопоставляет ответ с запросом, об чём и был мой спич
0
|
||
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|||
| 08.04.2018, 00:06 | |||
|
0
|
|||
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
|
| 08.04.2018, 00:11 | |
|
Jewbacabra, пожалуйста -- https://ru.wikipedia.org/wiki/... D0%B8_HTTP
0
|
|
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
||
| 08.04.2018, 00:13 | ||
|
kalabuni, последний раз прошу КОНКРЕТНОЕ название http заголовка
0
|
||
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
||
| 08.04.2018, 00:20 | ||
|
не знаю, что в вашем понимании "низкий уровень", но, имхо, для JS-программиста важным является то, как страница (документ) сопоставляет ответ с запросом, а не то, как именно это делается на сетевой розетке (сокете) я не знаю, как именно и в точности работает мобильный телефон, но пользоваться телефоном умею -- только это и требуется JS-программисту
0
|
||
| 08.04.2018, 00:20 | |
|
Помогаю со студенческими работами здесь
19
Как отправить запрос HTTP, а в ответ получаемую страницу не показывать пользователю? Как передать Http get запрос, вложить в него json с токеном и настройками и получить ответ
Ответ на http запрос Как и чем можно посмотреть какой запрос отправил браузер? (для новичков) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536
Одним из. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|