Это из интервью - http://www.glassdoor.com/Interview/Yelp-Software-Engineering-Intern-Interview-Questions-EI_IE43314.0,4_KO5,32_IP2.htm
"протокол, используемый для передачи сообщения в приложении HTTP?"
Я знаю, что протокол определяет «метод обмена данными через компьютерную сеть». http://www.computerhope.com/jargon/p/protocol.htm
Я знаю, что HTTP - это «протокол, используемый для передачи данных по всемирной паутине». ( http://www.computerhope.com/jargon/p/protocol.htm )
Я знаю, что приложение - это «программа с пользовательским интерфейсом» ( https://stackoverflow.com/questions/4431819/what-are-the-differences-between-a-program-and-an-application )
Объединяя все эти определения, я бы сказал, что приложение HTTP - это просто приложение, к которому можно получить доступ через Интернет, скажем, StackOverFlow. Но для передачи сообщения в приложение, не будет ли это также сделано через HTTP, потому что это включает в себя отправку данных по всему Интернету?
Является ли HTTP правильным ответом на это? Или что-то еще?
источник
Ответы:
Я не вижу этот вопрос в ссылке, которую вы разместили. И "протокол используется для передачи сообщений в приложении HTTP?" это не полный вопрос, поэтому трудно сказать, что действительно было задано.
Ваши комментарии абсолютно правы. HTTP-приложение говорит HTTP с клиентами или серверами. Что касается сообщения для передачи, его необходимо спросить, является ли это внешним или внутренним сообщением. Внутренние сообщения могут быть любого типа по любому протоколу. Если это сообщение, которое будет отправлено с HTTP, протокол будет HTTP, так просто.
Если вопрос в том, какие другие протоколы обычно используются, вы можете начать с TCP, IP, Ethernet. Для HTTPS вы также должны подумать о SSL и TLS.
Если вопрос касался сообщений, которые могут быть отправлены через HTTP, тогда STTR предоставил довольно длинный список протоколов, которые можно использовать выше HTTP.
источник
Передача сообщения в протоколе HTTP: XML (UDDI, WSDL, SOAP); WS-Security; XML-RPC; JSON; REST
Протокол бизнес-процесса: BPEL, BPMN
Протокол сообщений: SOAP, AMQP, MQTT, STOMP
Java: JMS
Разъем: WebSocket
Протокол объекта брокера: COM / DCOM, CORBA / IIOP (HTIOP, SSLIOP), JAVA RMI
Разъем: WebSocket
Протокол сообщений Adobe: AMF
P2P: WebRTC
Если вы посмотрите на первый список протоколов и рассмотрите протокол http как службу, работающую с XML, с этой точки зрения эти протоколы имеют наибольшую близость.
Да, все эти протоколы могут быть включены в другие протоколы, такие как FTP, или даже использовать дейтаграммы UDP.
Особенно если учесть уровень протоколов IP - TCP / IP, UDP / IP.
Но, помимо прочего, HTML, SOAP, UDDI и другие протоколы первого списка являются 7 уровнями сетевой модели OSI (приложения). И этот список упакован или передан с использованием HTML. Либо в качестве параметров, либо в качестве файлового сервера в HTTP.
Другие списки имеют различное сходство, но имеют общую особенность - взаимодействие между сервером-сервером и клиент-серверной частью.
Например, нет никаких полномочий для AJAX. Да, вы можете сделать пользовательский браузер реализации на сервере, и тогда у вас будет система эмуляции взаимодействия между веб-приложениями AJAX-AJAX на сервере, но для меня - это надумано.
Все 7 уровней включают свои названия, и каждый представляет следующий, как пакет.
Дело в том, что чем выше уровень модели OSI, тем легче получить доступ к интерьеру кукольного человечка.
Большинство сможет работать с информацией на верхних уровнях. Мне кажется, важнее окончательная информация.
Могут также наслаждаться электромагнитные колебания - например, северное сияние.
Или трансформатор Тесла.
Но это эстетическое удовольствие.
Протоколы на уровне задач 7 - практические и прагматичные.
Мне кажется, что сообщение - это модель OSI, которая может быть основана на возможности взаимодействия в веб-системах.
Да, вы можете спуститься на дно и сказать - включите электрическую цепь конденсатора и, таким образом, разорвите поток электрического тока - сделайте гальваническую развязку.
Но колебательные процессы идут дальше - через конденсатор, и рассматривают этот процесс как сигнал или информацию, и процесс примет сообщение.
Таким образом, вам нужно решить - что это за сообщение? Что такое среда передачи? И макроскопический уровень абстракции, на котором вы решаете рассмотреть это явление.
источник
Если вы используете браузер для доступа к приложению HTTP, ваш браузер сообщает приложению HTTP или SPDY, и приложение отвечает по тому же протоколу.
«HTTP-приложение» может означать нечто, имеющее «HTTP API» - что в основном означает, что оно предназначено не для использования браузером или пользователем, а для программы. Они все еще будут использовать HTTP / SPDY протокол выдавать запросы и получать ответы - но содержание может не быть HTML - это может быть XML или JSON, или это может быть просто HTTP-запрос GET без тела.
источник