В чем разница между протоколом и протоколом Json Wire
Протокол: стандарт для определения метода обмена данными по сети. Если браузер хочет установить связь с сервером, он должен создать HTTP-запрос и отправить этот HTTP-запрос на сервер, чтобы передать свой запрос ресурсов и параметров. Сервер получает запрос, обрабатывает его, делает необходимое и создает HTTP-ответ для отправки в браузер. Браузер должен следовать спецификации HTTP при создании запроса HTTP. Сервер также должен следовать спецификации HTTP при создании ответа HTTP. Именно так общение между браузером и сервером происходит стандартным образом, чтобы избежать конфликтов, следуя протоколу HTTP.
Протокол Json Wire: у клиента есть объект, который нужно отправить на сервер. Клиент преобразует этот объект в объект JSON и отправляет его на сервер. Сервер анализирует объект JSON и преобразует его обратно в объект для использования. Сервер преобразует объект ответа в объект JSON и отправляет его обратно клиенту. Затем клиент преобразует объект JSON в объект для использования.
Почему последний называется Json Wire Protocol?
1 ответ
Вы совершенно правы как в отношении протокола, так и в отношении JsonWireProtocol. На этом этапе стоит упомянуть, что ранее все реализации WebDriver, которые взаимодействовали с браузером или сервером RemoteWebDriver, использовали общий проводной протокол. Этот проводной протокол определяет веб-сервис RESTful, использующий JSON через HTTP.
Протокол JSON Wire - это абстрактная спецификация того, как поведение автоматизации, такое как нажатие или ввод текста, или все, что вы на самом деле хотите сделать со своим сценарием автоматизации, сопоставляется с запросами и ответами на селен, или приложение, или HTTP. Протокол будет предполагать, что API WebDriver был "сплющен", но ожидается, что клиентские реализации будут использовать более объектно-ориентированный подход, как продемонстрировано в существующем Java API. Проводной протокол реализован в парах запрос / ответ "команды" и "ответы".
Что такое протокол JSON Wire?
JSON (JavaScript Object Notation) - это легкий формат для обмена данными между клиентом и сервером. Приложения используют объекты JSON для отправки и получения данных между собой в веб-мире. Структура данных JSON является отраслевым стандартом и может использоваться для отправки и получения данных в виде пары ключ-значение. Некоторые люди говорят, что это очень хорошая альтернатива для XML. Мы можем сохранить файлы JSON как расширение.json.
Как выглядит JSON?
Простой файл json выглядит следующим образом, и есть много онлайн-редакторов, которые можно использовать для редактирования и проверки структуры JSON.
{
"Student":{
"FirstName":"Pawan",
"LastName":"Garia",
"IdNumber":"12345",
"City" : "New Delhi",
"EmailID" : "email@gmail.com" }
}
Почему JSON Wire Protocol был использован в первую очередь?
Для реализации клиент-серверной архитектуры, которая может дать нам следующие преимущества.
- Вы пишете тест на любом языке программирования.
- Вы можете выполнить или запустить тестирование в облачных сервисах, таких как SauceLabs, BrowserStack или Selenium Grid.
- Вы не обязаны запускать тестирование только на локальной машине.
- Различные драйверы (FirefoxDriver, ChromeDriver) могут быть созданы для браузеров и для отдельной реализации с использованием одних и тех же стандартов.
Таким образом, клиент-серверная реализация заранее требует стандартного набора спецификаций, чтобы сервер и клиент были синхронизированы друг с другом в отношении того, что поступает и идет на запрос и ответ. Это что-то вроде языка общения друг с другом. Таким образом, нам нужна некоторая общая спецификация для решения этого вида требований, и решение было HTTP
Почему HTTP это решение?
HTTP является стандартом для веб и может быть хорошей основой для спецификации. Каждый язык программирования имеет хорошие библиотеки HTTP, которые можно использовать для создания клиента и сервера для запросов и ответных вызовов.
Как протокол JSON Wire работает с HTTP?
HTTP-запрос и ответ обычно делаются из запросов GET и POST, что выходит за рамки этого обсуждения.
Текущее состояние
С точки зрения Selenium протокол JSON Wire устарел, и новая реализация WebDriver W3C Living Document.