IT박스

웹 API와 웹 서비스의 차이점은 무엇입니까?

itboxs 2020. 7. 1. 08:18
반응형

웹 API와 웹 서비스의 차이점은 무엇입니까?


웹 API웹 서비스 간에 차이점이 있습니까? 아니면 하나와 같은가요?


웹 서비스는 일반적으로 클라이언트 스텁을 자동으로 작성할 수 있는 WSDL제공합니다 . 웹 서비스는 SOAP 프로토콜을 기반으로합니다 . ASP.NET Web API는 REST 기반 인터페이스 를 구축하는 데 도움이되는 새로운 Microsoft 프레임 워크입니다 . 응답은 JSON 또는 XML 일 수 있지만 웹 API는 웹 서비스의 WSDL과 같은 서비스 설명을 제공하지 않으므로 클라이언트를 자동으로 생성 할 방법이 없습니다. 따라서 사용하려는 기술 중 하나가 요구 사항에 따라 다릅니다. WCF 조차도 요구 사항에 더 적합 할 수도 있습니다. MSDN 설명서를 참조하십시오.


웹 서비스와 웹 API의 기본 차이점

웹 서비스:

1) SOAP 기반 서비스이며 데이터를 XML로 반환합니다.

2) HTTP 프로토콜 만 지원합니다.

3) 오픈 소스는 아니지만 XML을 이해하는 모든 클라이언트가 사용할 수 있습니다.

5) 네트워크를 통해 데이터를 송수신하기 위해서는 SOAP 프로토콜이 필요하므로 경량 아키텍처가 아닙니다.

웹 API :

1) 웹 API는 HTTP 기반 서비스이며 기본적으로 JSON 또는 XML 데이터를 반환합니다.

2) HTTP 프로토콜을 지원합니다.

3) 응용 프로그램 또는 IIS 내에서 호스팅 할 수 있습니다.

4) 오픈 소스이며 JSON 또는 XML을 이해하는 모든 클라이언트가 사용할 수 있습니다.

5) 경량으로 설계되었으며 모바일 장치와 같이 대역폭이 제한된 장치에 적합합니다.


API 대 웹 서비스

링크 된 기사의 요약을 붙여 넣었습니다.

요약:

  1. 모든 웹 서비스는 API이지만 모든 API는 웹 서비스가 아닙니다.

  2. 웹 서비스는 API가 수행하는 모든 작업을 수행하지 않을 수 있습니다.

  3. 웹 서비스는 통신에 SOAP, REST 및 XML-RPC의 세 가지 사용 스타일 만 사용하지만 API는 통신에 모든 스타일을 사용할 수 있습니다.

  4. 웹 서비스는 항상 운영을 위해 네트워크가 필요하지만 API는 운영을 위해 네트워크가 필요하지 않습니다.

  5. 웹 서비스는 API 인 반면 API는 애플리케이션과 직접 인터페이스하는 것을 용이하게합니다.

더 읽기 : API와 웹 서비스의 차이점 | 차이점 | API 및 웹 서비스 http://www.differencebetween.net/technology/internet/difference-between-api-and-web-service/#ixzz3e3WxplAv

전체 답변은 위의 링크를 참조하십시오.


자세한 내용은이 링크를 방문하십시오 도표


원하는 경우 웹 서비스는 웹 API입니다. 특히 웹 API는 일반적으로 RESTful (HTTP 기반) 웹 서비스를 의미하고 웹 서비스는 일반적으로 SOAP + WSDL (+ HTTP 또는 SMTP 또는 JMS ..)을 의미합니다.

끝으로 RESTful 웹 서비스는 웹 서비스 (WSDL, SOAP)와 반대되지만 최근에는 RESTful + WSDL + SOAP를 의미하는 RESTful 웹 서비스 (대문자 'W')라는 용어가 도입되었습니다.

세 가지 개념의 차이점에 대해서는이 차트를 확인하십시오. http://www2.mokabyte.it/cms/figureproviderservlet?figureId=IUS-6NS-OBV_7f000001_19624184_5621ef4e--Fig02.jpg

그것이 도움이되기를 바랍니다!


웹 서비스는 웹 API와 완전히 동일하며 기본 데이터 형식 측면에서 조금 더 제한됩니다. 둘 다 HTTP 프로토콜을 사용하며 RESTful 서비스를 생성 할 수 있습니다. 그리고 JSON-RPC와 같은 다른 프로토콜도 잊지 마십시오.


In the context of ASP.Net a Web API is a Controller whose base class is ApiController and does not use Views. A Web Service is a class derived from WebService and has automatic WSDL generation. By default it is a SOAP api, but you can also use JSON by adding a ScriptServiceAttribute.


Well, TMK may be right in the Microsoft world, but in world of all software including Java/Python/etc, I believe that there is no difference. They're the same thing.


Difference between Web Service and Web API nicely explained here:

https://softwareengineering.stackexchange.com/questions/38691/difference-between-web-api-and-web-service

Text from the link:

Web Services - that's standard defined by W3C, so they can be accessed semi-automatically or automatically (WSDL / UDDI). The whole thing is based on XML, so anyone can call it. And every aspect of the service is very well defined. There's parameters description standard, parameter passing standard, response standard, discovery standard, etc. etc. You could probably write 2000 pages book that'd describe the standard. There are even some "additional" standards for doing "standard" things, like authentication.

Despite the fact that automatic invoking and discovery is barely working because clients are rather poor, and you have no real guarantee that any service can be called from any client.

Web API is typically done as HTTP/REST, nothing is defined, output can be for eg. JSON/XML, input can be XML/JSON/or plain data. There are no standards for anything => no automatic calling and discovery. You can provide some description in text file or PDF, you can return the data in Windows-1250 instead of unicode, etc. For describing the standard it'd be 2 pages brochure with some simple info and you'll define everything else.

Web is switching towards Web API / REST. Web Services are really no better than Web API. Very complicated to develop and they eat much more resources (bandwidth and RAM)... and because of all data conversions (REQUEST->XML->DATA->RESPONSE->XML->VALIDATION->CONVERSION->DATA) are very slow.

예 : WebAPI에서는 데이터를 압축하여 클라이언트에 압축 및 압축 해제 + 압축 해제하여 전송할 수 있습니다. SOAP에서는 HTML 요청 만 압축 할 수 있습니다.


모든 WebServices는 API이지만 모든 API는 WebServices가 아니며 웹에 노출되는 API를 웹 서비스라고합니다.


이해하기 매우 쉬운 두 가지는

  1. API : 다른 응용 프로그램 요청을 로컬로 처리 할 수있는 응용 프로그램의 계층입니다.
  2. 웹 서비스 : 웹 또는 인터넷을 통해 네트워크 형태의 원격 시스템을 통해 요청을 처리하고 응답 할 수있는 API입니다.

참고 : 모든 웹 서비스는 API이지만 모든 API는 웹 서비스는 아닙니다

참고 URL : https://stackoverflow.com/questions/19336347/what-is-the-difference-between-a-web-api-and-a-web-service

반응형