предисловие
Золотая девятка, серебряная десятка, еще один год бегового сезона. Позвольте мне сначала представить мою личную ситуацию, с полуторалетним стажем, подонком в колледже, специализирующимся на компьютерных науках. С моей любовью к интерфейсу, я в основном каждый день трачу немного времени на изучение, и основы в порядке. На самом деле оставаться в прежней компании вполне комфортно, сверхурочных нет, единственный минус в том, что она не имеет уклона в сторону технологий, а бизнес относительно простой. Учитывая будущее развитие карьеры, я, наконец, решил выйти из этой зоны комфорта.
Я уехал в середине сентября и на прошлой неделе проинтервьюировал 7 компаний. Одним из них является Youju.com, Этот процесс интервью был также более интересным опытом, потому что интервьюер в основном не задавал предварительных вопросов и был сильно избит. Только позже я узнал, что интервьюер был полноценным бэкэндом. Таким образом, этот обмен может быть бесполезен для предварительных интервью, и мои друзья должны наблюдать за волнением, чтобы расширить свои знания.
одна сторона
Что происходит, когда браузер вводит URL
Этот вопрос также является старой классической темой, и я думаю, что многие друзья также читали статьи на эту тему.
Примерный процесс:
- IP разрешения DNS
- Отправить запрос на подключение к серверу в соответствии с ip
- Трехстороннее рукопожатие, подключение к серверу
- передача информации
- Помашите рукой четыре раза, чтобы отключить сервер (не обязательно отключен, потому что TCP-соединение будет повторно использоваться в HTTP1.1)
- Браузер анализирует данные
- Построить дерево DOM и дерево CSSOM параллельно
- Композитное дерево рендеринга
- макет
- рисовать
- Рендеринг композитинга слоев (отображение контента на странице).
Во время интервью я, возможно, немного нервничал, и я не сказал часть рендеринга страницы позже.
https перенаправление
Описание оригинального заголовка есть, зачем вводить в браузереhttp://www.baidu.comперепрыгнет кhttpsПод соответствующим доменным именем, с какой целью это делать?
На самом деле все очень просто, перенаправление делает сервер, и цель — безопасность сайта.
Существует несколько способов перенаправления веб-страниц
- этикетка
- location.href
- window.open
- Установите метатег html
Каковы недостатки window.open
window.openДоступ к открытой веб-странице можно получить черезwindow.openerАтрибуты, полученные с исходного веб-сайтаwindowобъекта или черезdocument.referrerПолучите адрес исходного веб-сайта. Итак, используяwindow.open, третий параметр может быть установлен вnoopener=yes,noreferrer=yes.
Разница между UTF-8 и ГБК
Это было немного затянуто, но не дошло до сути.
Правильный ответ: GBK содержит все китайские иероглифы, UTF-8 содержит иероглифы, которые необходимо использовать во всех странах мира. UTF-8 — это международный код, и его универсальность относительно хороша, GBK — национальный код, и его универсальность хуже, чем у UTF-8, но база данных, занимаемая UTF-8, больше, чем у GBK.
из чего состоит запрос
Строка запроса (метод запроса, URL, версия протокола HTTP), заголовок запроса, тело запроса (данные передаются по почте)
Кэш браузера (надежный кеш, кеш согласования)
Это примерно говорит о полях, используемых сильным кешем, и о процессе использования кеша. Я мало что помню о полях кеша согласования.Говоря расплывчато, более важными являются две стратегии согласования кеша.Одна - сравнивать по времени модификации файла, а другая - сравнивать по к хеш-значению содержимого файла.
Какие заголовки http используются
content-typeи некоторые пользовательские заголовки. Они обычно используются в работе.
Поговорим о http2 и сценариях его применения
Новая функция «мультиплексирования» в http2, основанная на «бинарном кадрировании», делит данные байтового потока на пронумерованные фрагменты для передачи, после чего сервер, получив данные, синтезирует полные данные в соответствии с номером.
Сценарий применения не продуман.
Вы понимаете http3
Только поймите, что транспортный уровень основан на протоколе UDP.
Почему https более безопасен, чем http, процесс шифрования https
https более безопасен, чем http, потому что данные шифруются во время передачи.
Ответ заключается в том, что браузер генерирует случайные числа для построения алгоритма симметричного шифрования для сервера, а затем использует комбинацию симметричного и асимметричного шифрования.Данные используют симметричное шифрование, а ключ симметричного шифрования использует асимметричное шифрование.
Перед шифрованием данных еще этап проверки сертификата, поэтому я забыл на него ответить. Открытый ключ в сертификате используется для шифрования случайного числа и отправки его на сервер.
Каковы приложения симметричного шифрования на работе?
Не использовал его на работе, но знаю о симметричном шифровании AES.
Может ли инструмент захвата пакетов перехватывать данные https?Если да, то как можно гарантировать безопасность?
могу. Поскольку пользователь берет на себя инициативу, средство захвата пакетов может настроить сертификат, которому доверяет пользователь, чтобы данные можно было получить с помощью средства захвата пакетов.
что такое джвт
jwt можно использовать для проверки идентификационной информации пользователя, аналогичной традиционному токену.
Традиционный токен заключается в том, что сервер отправляет информацию о пользователе клиенту с помощью обработки MD5, а клиент предоставляет проверку токена при запросе. Поскольку MD5 необратим, сервер должен обратиться к базе данных, чтобы запросить соответствующую информацию о пользователе, снова выполнить MD5 и сравнить MD5 с MD5, отправленным клиентом.
JWT не требует, чтобы сервер запрашивал базу данных. JWT имеет соответствующий алгоритм шифрования и дешифрования. После того, как сервер получит JWT, он может получить информацию о пользователе посредством расшифровки ключа.
процесс аутентификации oauth2.0
Я слышал, но не понял, поэтому не ответил.
Скажи resfulApi
ResfulApi — это спецификация дизайна интерфейса, в которой для описания запросов используются семантические методы, такие как get (приобретение), post (новый), put (обновление), delete (удаление). Номер версии и имя ресурса будут включены в URL-адрес, а ресурсы описываются во множественном числе.
Произнесите граф QL
graphQL — это язык запросов API, который позволяет клиентам получать только те данные, которые им нужны. В процессе разработки данные, возвращаемые серверной частью, будут содержать некоторый контент, который не нужен внешнему интерфейсу. Используя graphQL, вы можете передать инициативу для получения данных на внешний интерфейс, указать данные, возвращаемые серверной частью через модель данных, и взять только необходимые данные, чтобы уменьшить избыточные данные интерфейса.
Произнеси дерево B+
Запутался, не ответил
две стороны
Со второй стороны я просто спросил о жизненном цикле Vue, а затем спросил о проекте. И я обнаружил, что многие компании в лицо будут спрашивать об оптимизации производительности. Здесь я также даю некоторые предложения, на которые можно ответить со следующих аспектов:
- Рендеринг: уменьшите перекомпоновку и перерисовку, используйте фрагмент для операций с домом
- Применение: защита от тряски, дросселирование
- Ресурсы: отложенная загрузка маршрутизации Vue, субподряд апплетов, карта спрайтов, отложенная загрузка изображений, предварительный анализ DNS, сжатие, кэширование.
- webpack: dllPligin, многопроцессорная упаковка
Три стороны
Три стороны — это лицо босса, не говоря уже о технологиях, в основном речь идет о каком-то опыте, личности, планировании карьеры, ожиданиях от компании и так далее. Из разговора я узнал, что начальник — программист, сменивший профессию, раньше был full-stack инженером, работал на Али. Потом я узнал, что компания создана менее чем за полгода, и это должна быть компания под Youju.com. Я спросил босса о плане технической команды компании.В настоящее время есть только два полных стека.Техническая команда расширяется и в будущем останется около десяти человек.
наконец
Хотя я, наконец, получил предложение, я все же решил не делать этого. В основном дело в технической команде и деньгах, лично я предпочитаю более стабильную компанию.
Некоторые из вопросов в этой статье не очень исчерпывающие, и те, кто заинтересован, могут самостоятельно ознакомиться с соответствующей информацией.
Перед собеседованием сделайте небольшой обзор знаний:
- Золотая девятка, серебряная десятка, младший и средний начальный этап, резюме обзора интервью "Глава JavaScript"
- Золотая девятка, серебряная десятка, краткое изложение обзора предварительных интервью для младших и средних классов "Глава Vue"
- Золотая девятка Серебряная десятка, младший и средний начальный и средний уровень интервью по внешнему интерфейсу Обзор Обзор «Браузер, HTTP, безопасность внешнего интерфейса»
Я надеюсь, что маленькие друзья, которые проходят собеседование, не будут обижены и получат понравившееся предложение как можно скорее.