Сети и около них
Разница между cookie и сессией/сеансом?
- Cookies — это файлы на стороне клиента, которые содержат информацию о пользователе. Сессия - это файлы на стороне сервера, которые содержат информацию о пользователе. - Cookie-файл заканчивается в зависимости от срока, установленного для него. Сессия заканчивается, когда пользователь закрывает свой браузер. - Вам не нужно запускать cookie, так как он хранится на вашем локальном компьютере. В PHP перед использованием $ _SESSION вы должны написать session_start (); Аналогично для других языков. - Официальный максимальный размер файла cookie составляет 4 КБ. В течение сессии вы можете хранить столько данных, сколько захотите. Единственное ограничение, которое вы можете достичь — это максимальный объем памяти, который скрипт может использовать за один раз, по умолчанию 128 МБ. - Файл cookie не зависит от сессии. Сессия зависит от Cookie.
Основные методы HTTP-запроса?
- GET: получить подробную информацию о ресурсе - POST: создать новый ресурс - PUT: обновить существующий ресурс - DELETE: Удалить ресурс
Отличие сервиса от веб-сайта?
- Веб-сервис не имеет пользовательского интерфейса. Веб-сайт имеет пользовательский интерфейс или графический интерфейс. - Веб-сервисы предназначены для взаимодействия других приложений через Интернет. Веб-сайты предназначены для использования людьми. - Веб-сервисы не зависят от платформы, так как используют открытые протоколы. Веб-сайты являются кроссплатформенными, так как требуют настройки для работы в разных браузерах, операционных системах и т. д. - Доступ к веб-сервисам осуществляется с помощью HTTP-методов — GET, POST, PUT, DELETE и т. д. Доступ к веб-сайтам осуществляется с помощью компонентов GUI - кнопок, текстовых полей, форм и т. д. - Например, Google maps API — это веб-сервис, который может использоваться веб-сайтами для отображения Карт путем передачи ему координат. Например, ArtOfTesting.com - это веб-сайт, на котором есть коллекция связанных веб-страниц, содержащих учебные пособия.
Существующие практики межсетевого взаимодействия?
- Обмен файлами по FTP. - Неструктурированные HTTP-запросы, договорённости между разработчиками. - Веб-сервисы. - Экзотика: сокеты, порты, бинарные объекты.
Виды кук?
- Сессионные cookie, также известные как временные cookie - Постоянные cookie-файлы - Первый файл cookie - Супер-cookie
Что подтверждает сертификат безопасности?
1) Лицо, которому он выдан, действительно существует 2) Оно управляет сервером, который указан в сертификате.
Пример XML?
<company> <company-id>12345</company-id> <name lang="ru">Абракадабра</name> <country lang="ru">Россия</country> <phone> <number>+7 (999) 999-99-99</number> <ext>777</ext> <info>Приёмная</info> <type> phone</type> </phone> </company>
Какие еще бывают протоколы?
FTP (File Transfer Protocol), POP3 (Post Office Protocol), SMTP (Simple Mail Transfer Protocol), TELNET, TCP, UDP, Ethernet
Обычно веб-сервисы работают поверх протокола ... или протокола более высокого уровня.
HTTP
Структура запроса (request) HTTP?
HTTP определяет следующую структуру запроса (request): - строка запроса (request line) — определяет тип сообщения - заголовки запроса (header fields) — характеризуют тело сообщения, параметры передачи и прочие сведения - тело сообщения (body) — необязательное
Структура ответного сообщения (response) HTTP?
HTTP определяет следующую структуру ответного сообщения (response): - строка состояния (status line), включающая код состояния и сообщение о причине - поля заголовка ответа (header fields) - дополнительное тело сообщения (body)
Что такое http?
HTTP — широко распространённый протокол передачи данных, изначально предназначенный для передачи гипертекстовых документов (то есть документов, которые могут содержать ссылки, позволяющие организовать переход к другим документам), сейчас же для любых данных.
Что такое JSON?
JSON - текстовый формат обмена данными, основанный на JavaScript (но он не зависит от языка). JSON благодаря популярности технологии API REST, получил импульс развития в программировании API и веб-сервисов. Это текстовый, легкий и простой в разборе формат данных, не требующий дополнительного кода для анализа. Таким образом, JSON помогает ускорить обмен данными и для веб-сервисов, которые должны просто возвращать много данных и отображать их.
Что такое REST?
REST (Representational State Transfer) — архитектурный стиль взаимодействия компьютерных систем в сети основанный на методах протокола HTTP. Данные по умолчанию передаются в JSON.
Что такое SOAP?
SOAP (Simple Object Access Protocol) — стандартный протокол обмена структурированными сообщениями в распределённой вычислительной среде. Данные передаются в XML.
В чем отличия REST и SOAP?
SOAP и REST нельзя сравнивать напрямую, поскольку первый — это протокол (или, по крайней мере, пытается им быть), а второй - архитектурный стиль. Основное различие между SOAP и REST заключается в степени связи между реализациями клиента и сервера. Клиент SOAP работает как пользовательское настольное приложение, тесно связанное с сервером. Между клиентом и сервером существует жесткое соглашение, и ожидается, что все сломается, если какая-либо из сторон что-то изменит. Вам нужно постоянное обновление после любого изменения, но легче определить, выполняется ли контракт. REST-клиент больше похож на браузер. Это универсальный клиент, который знает, как использовать протокол и стандартизированные методы, и приложение должно соответствовать этому. Вы не нарушаете стандарты протокола, создавая дополнительные методы, вы используете стандартные методы и создаете с ними действия для своего типа медиа. Если все сделано правильно, связности будет меньше, и с изменениями можно справиться более изящно.
TCP/IP это?
TCP/IP — сетевая модель передачи данных, представленных в цифровом виде. Модель описывает способ передачи данных от источника информации к получателю. В модели предполагается прохождение информации через четыре уровня, каждый из которых описывается правилом (протоколом передачи). Наборы правил, решающих задачу по передаче данных, составляют стек протоколов передачи данных, на которых базируется Интернет. Набор интернет-протоколов — это концептуальная модель и набор коммуникационных протоколов, используемых в Интернете и подобных компьютерных сетях. Он широко известен как TCP/IP, поскольку базовые протоколы в пакете — это протокол управления передачей (TCP) и интернет-протокол (IP).Набор интернет-протоколов обеспечивает сквозную передачу данных, определяющую, как данные должны пакетироваться, обрабатываться, передаваться, маршрутизироваться и приниматься. Эта функциональность организована в четыре слоя абстракции, которые классифицируют все связанные протоколы в соответствии с объемом задействованных сетей.
Что такое XML?
XML — это язык разметки. Является выбором по умолчанию для обмена данными, остается легко читаемым, даже при больших массивах информации.
Пример JSON?
[ { «title»:«bananas», «count»:«1000», «description»:[«500 green»,«500 yellow»] }, { ... } ]
Отличие stateless и stateful?
stateful — модель, при которой объект содержит информацию о своем состоянии, все методы работают в контексте его состояния stateless не предоставляют эту информацию. Все методы объекта работают вне какого-либо контекста или локального состояния объекта, которого в этом случае просто нет. Не делается предположений о состоянии сессии, все изменения атомарны, нет каких-то сессионных переменных на сервере, помнящих результат предыдущего запроса. Они каждый раз дают один и тот же неизменный ответ на один и тот же запрос, функцию или вызов метода. HTTP не имеет состояния в необработанном виде — если вы выполняете GET для определенного URL, вы получаете (теоретически) один и тот же ответ каждый раз.
Постоянные cookie-файлы это?
Вместо того, чтобы удаляться после закрытия браузера, как это делают сессионные cookie, постоянные cookie-файлы удаляются в определённую дату или через определённый промежуток времени. Это означает, что информация о cookie будет передаваться на сервер каждый раз, когда пользователь посещает веб-сайт, которому эти cookie принадлежат. По этой причине постоянные cookie иногда называются следящие cookie, поскольку они могут использоваться рекламодателями для записи о предпочтениях пользователя в течение длительного периода времени. Однако, они также могут использоваться и в «мирных» целях, например, чтобы избежать повторного ввода данных при каждом посещении сайта.
Недостаток http?
Данные передаются в открытом виде и никак не защищены. На пути из точки А в точку Б информация в интернете проходит через десятки промежуточных узлов, и, если хоть один из них находится под контролем злоумышленника, данные могут перехватить. То же самое может произойти, когда вы пользуетесь незащищённой сетью Wi-Fi, например, в кафе.
Какой протокол используется для установки безопасного соединения?
Для установки безопасного соединения используется протокол HTTPS с поддержкой шифрования.
Что гарантирует абсолютную безопасность соединения через протокол SSL/TLS?
Для этой гарантии существует сертификат. Вам как пользователю сертификат не нужен, но любой сервер (сайт), который хочет установить безопасное соединение с вами, должен его иметь.
Какой криптографический протокол обеспечивает защиту данных в протоколе HTTPS?
Защиту данных в HTTPS обеспечивает криптографический протокол SSL/TLS, который шифрует передаваемую информацию. По сути этот протокол является обёрткой для HTTP. Он обеспечивает шифрование данных и делает их недоступными для просмотра посторонними.
Коды ответов/состояния сервера (100-105) ?
Информационные
Какие данные содержатся в сертификате безопасности:
Как и в паспорте, в сертификате содержатся данные о его владельце, в том числе имя (или название организации), а также подпись, удостоверяющая подлинность сертификата.
Для чего используются куки (cookies)?
Как правило, он используется для определения того, поступили ли два запроса от одного и того же браузера — например, для входа пользователя в систему. Он запоминает информацию stateful для stateless протокола HTTP. Куки в основном используются для трех целей: Управление сессиями: Логины, корзины покупок, результаты игр и все, что сервер должен запомнить Пользовательские настройки, темы и другие настройки Запись и анализ поведения пользователя
Структура передачи данных в протоколе http?
Клиент-серверная структура передачи данных - Клиентское приложение формирует запрос и отправляет его на сервер, после чего серверное ПО обрабатывает данный запрос, формирует ответ и передаёт его обратно клиенту.
Коды ответов/состояния сервера (600-955)?
Коды Microsoft Server - коды ошибок, возникающих при создании коммутируемых подключений или VPN-подключений на клиентских компьютерах под управлением Windows 2000, Windows XP и Windows Server 2003. Примечание. Ошибки с кодами больше 900 появляются только при подключении к серверу маршрутизации и удаленного доступа под управлением Windows 2000 или операционной системы более поздней версии.
На что указывает метод, используемый в HTTP-запросе?
Метод, используемый в HTTP-запросе, указывает, какое действие вы хотите выполнить с этим запросом.
Примеры ресурсов?
Например, если мы пишем приложение для управления задачами, экземпляры ресурсов будут следующие: - Конкретный пользователь - Конкретная задача - Список задач
Различия методов GET и POST?
Оба метода успешно передают необходимую информацию из веб-формы скрипту, поэтому при выборе того или иного метода, который будет наиболее подходить сайту, нужно учитывать следующие факторы: - Принцип работы метода GET ограничивает объём передаваемой скрипту информации; - Так как метод GET отправляет скрипту всю собранную информацию формы как часть URL (то есть в открытом виде), то это может пагубно повлиять на безопасность сайта; - Страницу, сгенерированную методом GET, можно пометить закладкой (адрес страницы будет всегда уникальный), а страницу, сгенерированную метод POST нельзя (адрес страницы остается неизменным, так как данные в URL не подставляются); - Используя метод GET можно передавать данные не через веб-форму, а через URL страницы, введя необходимые значения через знак &: http://www.komtet.ru/script.php?login=admin&name=komtet - Метод POST в отличие от метода GET позволяет передавать запросу файлы; - При использовании метода GET существует риск того, что поисковый робот может выполнить тот или иной открытый запрос.
Первый файл cookie это?
Обычно атрибут домена cookie совпадает с доменом, который отображается в адресной строке веб-браузера. Это называется первый файл cookie. Однако сторонний файл cookie принадлежит домену, отличному от того, который указан в адресной строке. Этот тип файлов cookie обычно появляется, когда веб-страницы содержат контент с внешних веб-сайтов, например, рекламные баннеры. Это открывает возможности для отслеживания истории посещений пользователя и часто используется рекламодателями для предоставления релевантной рекламы каждому пользователю.
Основное различие методов GET и POST?
Основное различие состоит в способе передачи данных веб-формы обрабатывающему скрипту, а именно: - Метод GET отправляет скрипту всю собранную информацию формы как часть URL - Метод POST передает данные таким образом, что пользователь сайта уже не видит передаваемые скрипту данные
Уровни TCP/IP?
От самого низкого до самого высокого уровня: - уровень связи, содержащий методы связи для данных, которые остаются в пределах одного сегмента сети; - интернет-уровень, обеспечивающий межсетевое взаимодействие между независимыми сетями; - транспортный уровень, обрабатывающий связь между хостами; - прикладной уровень, который обеспечивает обмен данными между процессами для приложений.
Коды ответов/состояния сервера (400-499)?
Ошибка клиента
Коды ответов/состояния сервера (500-510)?
Ошибка сервера
Коды ответов/состояния сервера (300-307)?
Перенаправление
Что такое зомби-cookie (или evercookie, или persistent cookie)?
Поскольку cookie можно очень легко удалить из браузера, программисты ищут способы идентифицировать пользователей даже после полной очистки истории браузера. Одним из таких решений являются зомби-cookie (или evercookie, или persistent cookie) — не удаляемые или трудно удаляемые cookie, которые можно восстановить в браузере с помощью JavaScript. Это возможно потому, что для хранения куков сайт одновременно использует все доступные хранилища браузера (HTTP ETag, Session Storage, Local Storage, Indexed DB), в том числе и хранилища приложений, таких как Flash Player (Local Shared Objects), Microsoft Silverlight (Isolated Storage) и Java (Java persistence API). Когда программа обнаруживает отсутствие в браузере cookie-файла, информация о котором присутствует в других хранилищах — она тут же восстанавливает его на место и, тем самым, идентифицирует пользователя для сайта.
Посредством чего веб-службы могут взаимодействовать друг с другом и со сторонними приложениями?
Посредством сообщений, основанных на определённых протоколах (SOAP, XML-RPC и т. д.) и соглашениях (REST).
Какое первое действие выполняет браузер при установке безопасного HTTPS-соединения?
Проверка подлинности сертификата безопасности
Как работает криптографический протокол SSL/TLS?
Протокол SSL/TLS хорош тем, что позволяет двум незнакомым между собой участникам сети установить защищённое соединение через незащищённый канал. При установке безопасного соединения по HTTPS ваш компьютер и сервер сначала выбирают общий секретный ключ, а затем обмениваются информацией, шифруя её с помощью этого ключа. Общий секретный ключ генерируется заново для каждого сеанса связи. Его нельзя перехватить и практически невозможно подобрать — обычно это число длиной более 100 знаков. Этот одноразовый секретный ключ и используется для шифрования всего общения браузера и сервера.
Что такое SMTP (Simple Mail Transfer Protocol)?
Протокол, который задает набор правил для передачи почты. Сервер SMTP возвращает либо подтверждение о приеме, либо сообщение об ошибке, либо запрашивает дополнительную информацию.
Что такое Ethernet?
Протокол, определяющий стандарты сети на физическом и канальном уровнях.
Какой единственный метод существовал ранее?
Раньше хватало только GET, т.к. считалось, что вы можете хотеть от сервера только получить ответ. Но сейчас вам может понадобиться отредактировать профиль, удалить пост в соц. сети и т.п. Тогда для удобства были созданы различные методы.
Что такое ресурс?
Ресурс — это ключевая абстракция, на которой концентрируется протокол HTTP. Ресурс — это все, что вы хотите показать внешнему миру через ваше приложение.
Отличие сервиса от сервера?
Сервер может обозначать: - или некую логическую сущность (не обязательно программа), которая выполняет некую задачу (связного набора услуг/сервисов/функций) по отношению к клиенту. - или обычно мощное железо, на котором реализуются какие-то вычислительные функции или хранения данных для пользователей, подключенных удаленно.
Сессионные cookie это?
Сессионные cookie, также известные как временные cookie, существуют только во временной памяти, пока пользователь находится на странице веб-сайта. Браузеры обычно удаляют сессионные cookie после того, как пользователь закрывает окно браузер. В отличие от других типов cookie, сессионные cookie не имеют истечения срока действия, и поэтому браузеры понимают их как сессионные.
Что такое TCP?
Сетевой протокол, отвечающий за передачу данных в сети Интернет.
В чем состоит способ, которым мы идентифицируем ресурс для предоставления?
Состоит в том, чтобы назначить ему URI — универсальный идентификатор ресурса.
Какие cookie могут быть потенциальной проблемой безопасности?
Супер-cookie могут быть потенциальной проблемой безопасности и поэтому часто блокируются веб-браузерами. Если браузер разблокирует вредоносный веб-сайт, злоумышленник может установить супер-cookie и потенциально нарушить или выдать себя за законные запросы пользователей на другой веб-сайт, который использует тот же домен верхнего уровня или общедоступный суффикс, что и вредоносный веб-сайт. Например, супер-cookie с происхождением .com может злонамеренно повлиять на запрос к example.com, даже если файл cookie не был создан с сайта example.com. Это может быть использовано для подделки логинов или изменения информации пользователя.
Супер-cookie это?
Супер-cookie — это cookie-файл с источником домена верхнего уровня (например, .ru) или общедоступным суффиксом (например, .co.uk). Обычные cookie, напротив, имеют происхождение от конкретного доменного имени, например, example.com.
В чем отличия REST и SOAP (на примерах)?
То есть SOAP более применим в сложных архитектурах, где взаимодействие с объектами выходит за рамки теории CRUD, а вот в тех приложениях, которые не покидают рамки данной теории, вполне применимым может оказаться именно REST ввиду своей простоты и прозрачности. Действительно, если любым объектам вашего сервиса не нужны более сложные взаимоотношения, кроме: «Создать», «Прочитать», «Изменить», «Удалить» (как правило — в 99% случаев этого достаточно), возможно, именно REST станет правильным выбором. Кроме того, REST по сравнению с SOAP, может оказаться и более производительным, так как не требует затрат на разбор сложных XML команд на сервере (выполняются обычные HTTP запросы — PUT, GET, POST, DELETE). Хотя SOAP, в свою очередь, более надежен и безопасен.
Коды ответов/состояния сервера (200-226) ?
Успешные
Что такое куки (cookies)?
Файл cookie HTTP (файл cookie Интернета, файл cookie браузера) представляет собой небольшой фрагмент данных (часть http заголовка), который сервер отправляет в веб-браузер пользователя. Браузер может сохранить его и отправить обратно с последующими запросами на тот же сервер.
Почему ошибка 404 относится к 4** — клиентской, если по идее должна быть 5**?
Хотя интуитивно можно подумать, что данная ошибка должна относиться к ошибкам со стороны сервера, 404 по задумке является клиентской ошибкой, то есть подразумевается, что клиент (Вы) должен был знать, что URL страницы был перемещен или удален и Вы пытаетесь открыть несуществующую страницу.
Что такое FTP (File Transfer Protocol)?
Это протокол передачи файлов со специального файлового сервера на компьютер пользователя. FTP дает возможность абоненту обмениваться двоичными и текстовыми файлами с любым компьютером сети. Установив связь с удаленным компьютером, пользователь может скопировать файл с удаленного компьютера на свой или скопировать файл со своего компьютера на удаленный.
Что такое TELNET?
Это протокол удаленного доступа. TELNET дает возможность абоненту работать на любой ЭВМ находящейся с ним в одной сети, как на своей собственной, то есть запускать программы, менять режим работы и так далее. На практике возможности ограничиваются тем уровнем доступа, который задан администратором удаленной машины.
Что такое POP3 (Post Office Protocol)?
Это стандартный протокол почтового соединения. Серверы POP обрабатывают входящую почту, а протокол POP предназначен для обработки запросов на получение почты от клиентских почтовых программ.
Что такое веб-сервис? (WS — Web service)
Это технология, позволяющая системам обмениваться данными друг с другом через сетевое подключение.Веб-сервис — просто адрес, ссылка, обращение к которому позволяет получить данные или выполнить действие. То есть это идентифицируемая уникальным веб-адресом (URL-адресом) программная система со стандартизированными интерфейсами, а также HTML-документ сайта, отображаемый браузером пользователя.Веб-служба является единицей модульности при использовании сервис-ориентированной архитектуры приложения. По сути, веб-сервисы — это реализация абсолютно четких интерфейсов обмена данными между различными приложениями, которые написаны не только на разных языках, но и распределены на разных узлах сети.
Что такое UDP?
Это тоже транспортный протокол передачи данных, но без подтверждения доставки в отличие от TCP
Что делает браузер с помощью http?
Этот протокол не только устанавливает правила обмена информацией, но и служит транспортом для передачи данных — с его помощью браузер загружает содержимое сайта на ваш компьютер или смартфон.
Какое соглашение определило структуру построения веб-приложений, в том числе и работу с методами?
соглашение REST