В чем разница между протоколом SOAP и HTTP. Когда мы говорим "SOAP over HTTP", что это значит??
Разница между протоколом SOAP и HTTP?
Ответ 1
Вы можете обслуживать любые контенты через HTTP, такие как HTML, изображения, звук, видео и т.д. SOAP - это кодирование сообщений на основе XML, которое обычно отправляется через HTTP, но может быть отправлено через SMTP или даже FTP, хотя я "Никогда не видел такой системы, используемой в производственной среде.
Так же, как HTTP находится поверх TCP (TCP через IP), SOAP находится поверх HTTP. Слои поверх слоев...
Если вы посмотрите на запрос SOAP, вы можете увидеть оба уровня, с заголовками HTTP вверху, за которым следует сообщение SOAP. Из учебника w3schools SOAP:
--------- HTTP portion of the message ------
POST /InStock HTTP/1.1
Host: www.example.org
Content-Type: application/soap+xml; charset=utf-8
Content-Length: nnn
--------- SOAP portion of the message ------
<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
<soap:Body xmlns:m="http://www.example.org/stock">
<m:GetStockPrice>
<m:StockName>IBM</m:StockName>
</m:GetStockPrice>
</soap:Body>
</soap:Envelope>
Больше для вас:
Ответ 2
Чтобы взаимодействовать с сервером, запрос должен быть в формате XML с использованием SOAP. Но в случае HTTP запрос может быть отправлен в формате HTML, изображения, видео и т.д. Запрос SOAP отправляется с использованием протокола HTTP.
Ответ 3
SOAP означает протокол Simple Object Access. Он используется для отправки и получения сообщений на основе XML. Он определен в XML.
Пример.
<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.example/2003/05/soap-envelope/"
soap:encodingStyle="http://www.example.com/2003/05/soap-encoding">
<soap:Body>
<m:GetPriceResponse xmlns:m="http://www.example.com/prices">
<m:Price>1.90</m:Price>
</m:GetPriceResponse>
</soap:Body>
</soap:Envelope>
smtp означает Simple Mail Transfer Протокол. Simple Mail Transfer Protocol - это способ надежной и эффективной передачи электронной почты. smtp используется для отправки почты получателю почтовый ящик, таким образом, используя различные методы для доступа к электронной почте в своем почтовом ящике. smtp по умолчанию использует tcp порт 25. Протокол для отправки почты является тем же, но использует порт 587. smtp подключения, защищенные [ SSL], известный как smtps, по умолчанию порт 465 (нестандартный, но иногда используемый по наследству). Мы можем отправлять сообщения синхронно или асинхронно. Сессии могут автоматически управляться.
SOAP зависит от языка, но SMTP не зависит от языка. SOAP в основном используется для веб-сервисов XML. SMTP также использует http, чтобы получить или размещать информацию.