@nikifovadim
Software Engineer

Как сервер передает страницы?

Вот заходит человек на сайт он каким-то образом получает сначала страницу для того чтобы работать если это было Single Page application. Если это приложение multipage то в данном случае сервер отдает какую то страницу.

Как сервер передает страницы или отдает страницы?
Он делает это виде HTML?

Какие есть способы передачи страниц?
  • Вопрос задан
  • 117 просмотров
Решения вопроса 1
Zoominger
@Zoominger
System Integrator
Да, по протоколу HTTP/HTTPS, и, как правило, в виде HTML. Бройзер делает GET-запрос и получает данные.
Так же передаются по тому же HTML вспомогательные файлы - CSS, JS-скрипты, картиночки.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@rPman
Рональд Макдональд все верно написал, дополню:

Страницы, а точнее данные можно передавать по другим протоколам, например ftp, а в локальной сети можно даже открывать по протоколу smb (только windows) или даже локальные файлы (file:///путь_к_html)), но на сколько я знаю для вопросов безопасности, по умолчанию миксить разные режимы, включая https и http запрещается (если стартовая страница http то наверное можно, но скоро все браузеры начнут громко предупреждать что это плохо, пока только сверху намекают)

Данные можно передавать не только штатным http но и с помощью его расширения websocket, в этом случае можно так же слать сообщения наоборот, от клиента к серверу.

Так же есть протокол webrtc, который позволяет вспомогательные данные загружать/передавать не с/на сервер, а с другими пользователями веб сайта p2p, режим не простой (не все одинаково поддерживают по стандарту), блокируется некоторыми неадекватными (к сожалению многими, например мобильными) провайдерами, но он есть и позволяет неплохо экономить на сетевом трафике для тяжелого медиаконтента.

И в догонку, браузеры позволяют приложениям регистрировать свои протоколы, но работает это фактически либо как обычный http с подменой либо как запуск стороннего приложения, так же нельзя смешивать разные протоколы на одной странице.

p.s. еще есть интересный стандарт data uri, позволяет размещать контент элемента прямо в адресной строке
data:text/html;charset=utf-8;base64,SGVsbG8gPHNjcmlwdD5hbGVydCgnd29ybGQnKTs8L3NjcmlwdD4=

так же это работает для любых элементов на странице, можно даже картинки так вставлять, только не эффективно

p.p.s. совсем добавлю, еще есть протокол chrome:// или moz-extension:// для доступа к элементам расширений браузера, но тут нет стандарта
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы