source

JSON, REST, SOAP, WSDL 및 SOA: 이 모든 것을 함께 연결하는 방법

nicesource 2023. 3. 15. 19:43
반응형

JSON, REST, SOAP, WSDL 및 SOA: 이 모든 것을 함께 연결하는 방법

현재 몇 가지 시험을 치르고 있는데 몇 가지 컨셉을 고민하고 있어요.이것들은 모두 내 노트에 언급되어 있지만, 나는 그것들이 어떻게 연결되어 있는지 정말 이해할 수 없었다.내가 아는 한:

SOA - 서비스 소비자/제공자가 소통할 수 있도록 하는 솔루션.(이것이 다른 모든 것을 포괄하는 용어인 것으로 알고 있습니다.)

WSDL - 공급자서비스를 설명하는 언어.

SOAP - 서비스에서 메시지를 보내기 위해 사용하는 XML 프로토콜 '래퍼'입니다.WSDL과 연계하여 파라미터를 제공합니까?

REST - SOAP와 기능이 비슷하지만 XML을 사용하지 않는 설계 패턴(이 패턴에 대해서는 잘 모르겠습니다)

JSON - javascript를 사용하는 XML을 대체할 수 있습니까?(이것도 잘 모르겠어요)

인터넷을 둘러보면 이 모든 것이 무엇이고 어떻게 서로 연결되는지에 대한 명확한 정의는 없는 것 같습니다.

웹 어플리케이션을 개발하고 있는데, 이 기능을 어플리케이션의 프레젠테이션에서 분리하기로 결정했다고 가정해 봅시다.그 이유는 웹 어플리케이션이 더 자유롭기 때문입니다.

API를 만들고 다른 사용자가 API를 통해 자신의 프런트 엔드를 구현할 수 있도록 합니다.방금 한 것은 SOA 방법론, 즉 웹 서비스를 구현하는 것입니다.

웹 서비스는 플랫폼 및 프로그래밍 언어에 관계없이 표준 인터넷 프로토콜을 통해 기능 구성요소에 액세스할 수 있도록 합니다.

따라서 유용한 처리와 생성을 수행하는 백엔드(Web 서비스)와 프런트엔드(데이터를 소비하는 것) 간의 교환 메커니즘을 설계할 수 있습니다(Web, 모바일 또는 데스크톱 애플리케이션 또는 다른 웹 서비스).여기서 유일한 제한은 프런트엔드와 백엔드가 같은 '언어'를 사용해야 한다는 것입니다.


SOAP과 REST가 필요한 부분입니다.웹 서비스와의 커뮤니케이션을 위한 표준적인 방법입니다.

SOAP:

SOAP는 내부적으로 XML을 사용하여 데이터를 주고 받습니다.SOAP 메시지는 견고한 구조로 되어 있기 때문에 응답 XML을 해석해야 합니다.WSDL은 어떤 요청을 할 수 있는지, 어떤 매개 변수를 사용하여 무엇을 반환하는지 지정하는 것입니다.이것은 API의 완전한 사양입니다.

기타:

REST는 디자인 컨셉입니다.

월드 와이드 웹은 REST 아키텍처 스타일에 적합한 시스템의 가장 큰 구현입니다.

RESTful서비스는 표준 URI 및 메서드를 사용하여 웹 서비스에 호출합니다.URI를 요구하면 오브젝트의 표현이 반환되어 조작을 실행할 수 있습니다(GET, PUT, POST, DELETE 등).데이터를 나타내는 XML을 선택하는 것만으로 한정되는 것이 아니라, 실제로 임의의 것을 선택할 수 있습니다(JSON 포함).

Flickr의 REST API는 더 나아가 이미지를 반환할 수도 있습니다.


JSONXML은 기능적으로 동등하며 일반적인 선택입니다.Protobufs 기반의 GRPC나 Apache Thrift와 같은 RPC 기반 프레임워크도 있어 API 생산자와 소비자 간의 통신에 사용할 수 있습니다.웹 API에서 가장 일반적으로 사용되는 형식은 JSON입니다. 왜냐하면 JSON은 모든 언어로 사용하기 쉽고 해석하기 쉽기 때문입니다.

WSDL: Web Service Description Language의 약자

SOAP(Simple Object Access Protocol)에서 웹 서비스를 사용하고 프로젝트에 웹 서비스를 추가할 때 클라이언트 응용 프로그램이 웹 서비스 기능을 인식하지 못합니다.왠지 이고, .WSDL 일일에 동일한 할 수 . 예를 들어 동일한 파일을 사용할 수 없습니다..Net ★★★★★★★★★★★★★★★★★」php★★★★★★WSDLfile에는 웹 서비스 기능에 대한 설명이 포함되어 있습니다.은 " " " 입니다.XMLSOAP 할 수 .REST.

REST: Representational State Transfer의 약자

이것은 또 다른 종류의 API 서비스인데, 이것은 클라이언트에서 사용하기 매우 쉽습니다.가 따로 .WSDL은, 다른 「」에 수 . CRUD를 사용합니다.HTTP Verbs( Reading, Creation, for , Delete Deleting는 (GET for Reading, POST for Creation, PUT 또 update update update,,, 업데이트, DELETE for Delete)를 HTTP및의 경우 은 토토콜 protocol protocol protocol protocol protocol protocol protocol protocol protocol protocol protocol protocol protocol protocol protocol protocol protocol protocol protocol에 있습니다.JSON ★★★★★★★★★★★★★★★★★」XML, 관련지어져 있는 ,, 클, 련, 련, 련, 련, 련을 정확하게 호출해야 .HTTP Verb정확한 매개 변수 이름과 유형을 통해.위한 이 없기 에 (예: 정의하기 위한 파일)WSDL이 작업은 엔드포인트를 사용한 수동 작업입니다.그러나 클라이언트 측 구현을 생성하기 위한 다양한 IDE용 플러그인이 있기 때문에 큰 문제가 되지 않습니다.

SOA: 서비스 지향 아키텍처의 약자

웹 서비스 개념 및 아키텍처를 사용하는 모든 프로그래밍을 포함합니다.대규모 애플리케이션을 실장하고 싶다고 상상해 주세요.한 가지 방법은 마이크로 서비스라고 불리는 몇 가지 다른 서비스를 갖는 것일 수 있으며, 전체 애플리케이션 메커니즘은 필요한 웹 서비스를 적절한 시기에 호출하는 것입니다.둘다요.REST그리고.SOAP웹 서비스는 일종의SOA.

JSON: 약자:javascript Object Notation

javascript의 오브젝트를 시리얼화할 때 오브젝트 포맷의 유형은 JSON입니다.human 클래스를 가지고 있다고 상상해 주세요.

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스트링이것은 이전에 설명한 다른 개념과 비교해서 다른 개념입니다.

언급URL : https://stackoverflow.com/questions/16626021/json-rest-soap-wsdl-and-soa-how-do-they-all-link-together

반응형