разница - JSON, REST, SOAP, WSDL и SOA:как все они соединяются вместе




вопросы на (3)

WSDL : Стенды для описания веб-сервиса

В SOAP (протокол простого доступа к объектам) при использовании веб-службы и добавлении веб-службы в проект ваши клиентские приложения не знают о функциях веб-сервиса. В наше время это как-то старомодно, и для каждого типа разных клиентов вам нужно реализовать различные файлы WSDL . Например, вы не можете использовать тот же файл для клиента .Net и php . В файле WSDL есть несколько описаний функций веб-сервиса. Тип этого файла - XML . SOAP является альтернативой REST .

ОТДЫХ : Стенды для передачи репрезентативного состояния

Это еще один вид сервиса API, он очень прост в использовании для клиентов. Им не нужно иметь специальное расширение файла, например, файлы WSDL . Операция CRUD может быть реализована с помощью различных HTTP Verbs (GET для чтения, POST для создания, PUT или PATCH для обновления и DELETE для удаления желаемого документа). Они основаны на HTML протоколе, и чаще всего ответ находится в JSON или XML формат. С другой стороны, клиентское приложение должно точно вызывать связанный HTTP Verb через точные имена и типы параметров. Из-за отсутствия специального файла для определения, такого как WSDL , это ручное задание с использованием конечной точки. Но это не имеет большого значения, потому что теперь у нас есть много плагинов для разных IDE для создания клиентской реализации.

SOA : стенды для сервис-ориентированной архитектуры

Включает в себя все программы с концепциями и архитектурой веб-сервисов. Представьте, что вы хотите реализовать крупномасштабное приложение. Одна из практик может заключаться в использовании различных сервисов, называемых микросервисами, и весь механизм приложения будет называть необходимый веб-сервис в нужное время. Как веб-службы REST и SOAP являются своего рода SOA .

JSON : Стенды для javascript Object Notation

когда вы сериализуете объект для javascript, тип формата объекта - JSON. представьте, что у вас есть человеческий класс:

class Human{
 string Name;
 string Family;
 int Age;
}

и у вас есть несколько экземпляров из этого класса:

Human h1 = new Human(){
  Name='Saman',
  Family='Gholami',
  Age=26
}

когда вы сериализуете объект h1 в JSON, результат:

  [h1:{Name:'saman',Family:'Gholami',Age:'26'}, ...]

javascript может оценить этот формат с помощью функции eval() и создать ассоциативный массив из этой строки JSON . Это другое понятие по сравнению с другими понятиями, описанными мной ранее.

В настоящее время я делаю некоторые экзамены, и я борюсь с некоторыми концепциями. Все они были «упомянуты» в моих заметках, но я действительно не понимал, как все они связаны друг с другом. Насколько я понимаю:

SOA - решение для обмена информацией между потребителями / поставщиками услуг. (насколько я понимаю, это зонтичный термин для всего остального)

WSDL - язык, описывающий службу поставщика.

SOAP - оболочка XML-протокола, используемая службами для отправки сообщений. Работает совместно с WSDL для предоставления параметров?

REST - шаблон проектирования, аналогичный функции SOAP, но избегающий XML? (действительно не уверен в этом)

JSON - альтернатива XML, которая использует javascript? (не уверен в этом)

Оглядываясь в интернете, похоже, нет четкого определения того, что все это и как они связаны.


Представьте, что вы разрабатываете веб-приложение, и вы решили отделить функциональность от презентации приложения, потому что это дает большую свободу.

Вы создаете API и позволяете другим реализовать свои собственные интерфейсы над ним. То, что вы только что сделали, - это реализовать методологию SOA , то есть использовать веб-службы.

Веб-сервисы делают функциональные блоки-блоки доступными по стандартным интернет-протоколам независимо от платформ и языков программирования.

Таким образом, вы создаете механизм обмена между фоновым контентом (веб-службой), который обрабатывает и генерирует что-то полезное, и интерфейс (который потребляет данные), что может быть чем угодно. (Веб-приложение, мобильное приложение или настольное приложение или другой веб-сервис). Единственное ограничение здесь заключается в том, что интерфейсный и серверный сервер должны «говорить» на одном и том же «языке».

Именно здесь появляются SOAP и REST. Это стандартные способы, с помощью которых вы могли бы общаться с веб-сервисом.

МЫЛО:

SOAP внутренне использует XML для отправки данных взад и вперед. Сообщения SOAP имеют жесткую структуру, а XML-ответ должен анализироваться. WSDL - это спецификация того, какие запросы могут быть сделаны, с какими параметрами и чем они будут возвращаться. Это полная спецификация вашего API.

ОТДЫХ:

REST - это концепция дизайна.

Всемирная паутина представляет собой самую большую реализацию системы, соответствующей архитектурному стилю REST.

Он не такой жесткий, как SOAP. Веб-службы RESTful используют стандартные URI и методы для совершения вызовов в веб-сервисе . Когда вы запрашиваете URI, он возвращает представление объекта, после чего вы можете выполнять операции (например, GET, PUT, POST, DELETE). Вы не ограничиваетесь выбором XML для представления данных, вы можете выбрать что-нибудь действительно (включен JSON)

API REST от Flickr идет дальше и позволяет вам возвращать изображения.

JSON и XML, являются функционально эквивалентными и могут быть выбраны. XML считается слишком многословным и сложнее анализировать, поэтому много раз данные более адекватно представлены с использованием JSON. (Например, сериализация)

Тем не менее это выбор.


Строка null значения в ActionScript даст строку "NULL" . Мое подозрение в том, что кто-то решил, что это хорошая идея, чтобы декодировать строку "NULL" как null , вызывая обрыв, который вы видите здесь, вероятно, потому, что они передавали null объекты и получали строки в базе данных, когда они не хотели этого (так что не забудьте также проверить эту ошибку).







json rest soap wsdl soa