задний план
Что такое коды статуса http, это также очень частый вопрос на собеседованиях.
Вообще всем известно, что 404 страницы не существует, 500 ошибок сервера, 301 редирект, 302 временный редирект, 200ok, 401 неавторизованный и так далее.
Если вы просто ответите таким образом, возможно, вам удастся получить от интервьюера только 50–60 баллов, что недостаточно, чтобы произвести хорошее впечатление на интервьюера. по трем кодам состояния и связанным с ними сведениям, это кэш согласования 304, обновление протокола 101 и переход 307hsts.
304 Кэш переговоров
Начнем с кэша согласования 304. Это относительно базовые знания. Поверьте мне, если вы упомянете кеш переговоров 304, интервьюер обязательно спросит вас, что такое кеш переговоров?
Затем вы покажете себе своему браузеру кэш-память знания о времени. Я обычно так a: кэш браузера разделен на обязательные консультационные кэш и кэш-память, приоритетное чтение приоритета кэша.
Принудительный кеш делится на истечение срока действия и управление кешем, а срок действия — это определенное время, которое является более старым стандартом, а управление кешем обычно представляет собой определенную продолжительность времени, которая является относительно новой и имеет более высокий приоритет.
Кэш согласования включает etag и last-modified.Стандарт настройки last-modified — это время последней модификации ресурса, и etag используется для решения ситуации, когда время модификации ресурса может быть очень частым. значение, рассчитанное на основе содержания ресурса, следовательно, приоритет также выше.
Разница между согласованным кешем и принудительным кешем заключается в том, что для принудительного кеша не требуется доступ к браузеру, и возвращаемый результат равен 200, а для согласованного кеша требуется доступ к серверу, и возвращаемый результат равен 304.
101 обновление протокола
В основном используется для веб-сокета, также может использоваться для обновления http2.
Характеристики и функции вебсокета не детализированы, с ними все знакомы.
Преимуществ у http2 много.В целом, интервьюер удовлетворен характеристиками поддержки нескольких запросов для одного соединения, бинарных, сжатых заголовков и отправки сервером. Особое понимание также относится к Google Baidu самостоятельно, и я не буду здесь вдаваться в подробности.
Конечно, в это время нам, возможно, придется столкнуться со следующим вопросом интервьюера: в чем разница между https, http, http2 и его прототипом spdy, каковы преимущества и недостатки каждого, и каковы ссылки в их установлении. связей и этих знаний Читатель может провести собственное исследование.
307 прыжок
Это относительно высококлассный вариант.Первоначальное использование состоит в том, чтобы заставить запрос на публикацию переходить к новому запросу на публикацию, но он также используется для перехода по hsts.
Полное название hsts — Строгая транспортная безопасность HTTP (HTTP Strict Transport Security, аббревиатура: HSTS). Таким образом можно избежать атак с зачисткой ssl, то есть злоумышленник проводит атаку, когда пользователь обращается по http, выдает себя за пользователя на сервер, использует https-доступ между злоумышленником и сервером и использует http-доступ между пользователя и сервера.
Конкретный метод использования заключается в добавлении Strict-Transport-Security в заголовок ответа сервера, и вы можете установить max-age
Конечно, когда дело доходит до атак с зачисткой ssl, вам должно быть очень интересно, какие еще методы можно использовать для атаки на так называемый безопасный https? То, что я узнал здесь, — это атака перехвата ssl, которая, вероятно, доверяет стороннему сертификату безопасности, который используется прокси-программой для мониторинга https. Если есть еще, добро пожаловать, чтобы добавить.
Суммировать
Только три кода состояния могут включать в себя такое богатство знаний. Что касается кодов состояния, мы не можем просто повторять коды состояния и их соответствующие значения односторонне. Мы должны активно копать, углубляться и строить нашу собственную сетевую систему с помощью кодов состояния http.
Оставьте домашнее задание: в чем разница между 301 и 302? К каким сценариям они применимы? Будете ли вы по-прежнему помнить только, что одно перенаправление является постоянным, а другое — временным перенаправлением?
Наконец, если моя статья была вам полезна, пожалуйста, подпишитесь иstarэтот блог или следуйте за мнойgithub
Ссылаться на
Я знаю, что вы ленивы, я искал для вас актуальную информацию
Говоря о механизме кеширования браузера http
Некоторые вещи, которые вы должны знать о HTTP, HTTP2.0, SPDY, HTTPS
Чего вы не знаете о HSTS