Qual é a diferença entre uma API web e um serviço web?

Existe alguma diferença entre uma API web e um serviço web ? Ou são a mesma coisa ?

Author: Andrejs, 2013-10-12

10 answers

Um serviço web oferece normalmente um WSDL a partir do qual você pode criar pubs de clientes automaticamente. Os Serviços Web baseiam-se no protocolo SOAP. A API Web é um novo framework Microsoft que o ajuda a construir as interfaces com base no resto . A resposta pode ser JSON ou XML, mas não há maneira de gerar clientes automaticamente porque a API Web não oferece uma descrição de serviço como o WSDL de Serviços Web. Por isso, depende dos seus requisitos qual dos técnicas que queres usar. Talvez até o WCF se adapte melhor às suas necessidades, basta olhar para a documentação MSDN.

 68
Author: TMK, 2014-03-28 14:17:09

Diferença básica entre serviços Web e APIs Web

Serviço Web:

1) é um serviço baseado em SOAP e retorna dados como XML.

2) só suporta o protocolo HTTP.

3) só pode ser hospedado no IIS.

4) não é código aberto, mas pode ser usado por qualquer cliente que compreenda XML.

([1]} 5) requer um protocolo SOAP para receber e enviar dados através da rede, por isso não é uma arquitetura de peso leve.

API Web:

1) A A API Web é um serviço baseado em HTTP e retorna dados JSON ou XML por padrão.

2) suporta o protocolo HTTP.

3) pode ser hospedado dentro de uma ou mais aplicações.

4) é de código aberto e pode ser usado por qualquer cliente que compreenda JSON ou XML.

5) é arquitecturado de peso leve e bom para dispositivos com largura de banda limitada, como dispositivos móveis.

 37
Author: Vaibhav Shiledar, 2017-01-04 04:59:05

API vs serviço Web

Acabei de colar o resumo do artigo relacionado:

Resumo:

  1. Todos os serviços Web são APIs, mas todas as APIs não são serviços Web.

  2. Os Serviços Web podem não realizar todas as operações que uma API faria.

  3. Um serviço Web utiliza apenas três estilos de Utilização: SOAP, REST e XML-RPC para comunicação enquanto API pode usar qualquer estilo para a comunicação.

  4. Um serviço Web precisa sempre de uma rede para o seu funcionamento, enquanto uma API não precisa de uma rede para o seu funcionamento.

  5. Uma API facilita a interface diretamente com uma aplicação, enquanto um serviço Web é um...

Leia mais: diferença entre a API e o serviço Web / diferença entre / API vs serviço Web http://www.differencebetween.net/technology/internet/difference-between-api-and-web-service/#ixzz3e3WxplAv

Ver o link acima para a resposta completa.

 19
Author: Zia Ur Rahman, 2015-06-25 07:19:25

Para mais detalhes, visite este link Diagram

 8
Author: Adiii, 2016-11-18 11:46:55

Um serviço Web se quiser é uma API Web. Especificamente a API Web geralmente significa serviço Web repousante (baseado em HTTP) e serviço Web geralmente significa SOAP+WSDL (+HTTP ou SMTP ou JMS..).

[[1]} tipicamente RESTful Web services are opposed to Web Services (WSDL,SOAP) but recently it has been introduced the term RESTful Web services (with uppercase 'W') that means RESTful+WSDL+SOAP..

Veja este gráfico para as diferenças entre os três conceito: http://www2.mokabyte.it/cms/figureproviderservlet?figureId=IUS-6NS-OBV_7f000001_19624184_5621ef4e--Fig02.jpg

Espero que ajude!
 4
Author: Ga Sacchi, 2014-12-17 22:18:08

O serviço Web é absolutamente o mesmo que a API Web-apenas um pouco mais restrito em termos de formato de dados subjacentes. Ambos usam o protocolo HTTP e ambos permitem criar serviços descansados. E não se esqueça de outros protocolos como JSON-RPC-talvez se encaixem melhor.

 4
Author: Vincent, 2016-05-28 20:38:15

Bem, o TMK pode estar certo no mundo da Microsoft, mas no mundo de todos os softwares, incluindo Java/Python/etc, eu acredito que não há diferença. São a mesma coisa.

 -1
Author: Ryan Shillington, 2014-07-23 20:00:26

Todos os WebServices São API, mas todas as API não são WebServices, API que é exposto na Web é chamado de serviços web.

 -1
Author: Pavan T, 2018-06-14 06:54:50

Diferença entre o serviço Web e a API Web bem explicada aqui:

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

Texto da ligação:

Serviços Web-é o padrão definido pelo W3C, para que possam ser acedidos semi-automaticamente ou automaticamente (WSDL / UDDI). A coisa toda é baseada em XML, então qualquer um pode chamá-lo. E todos os aspectos do serviço estão muito bem definidos. Há parâmetros. padrão de descrição, padrão de aprovação do parâmetro, padrão de resposta, padrão de descoberta, etc. etc. Podias escrever um livro de 2000 páginas que descrevesse o padrão. Existem até alguns padrões " adicionais "para fazer coisas" padrão", como autenticação.

Apesar do facto de a invocação automática e a descoberta mal funcionarem, porque os clientes são bastante pobres, e não tem garantias reais de que qualquer serviço possa ser chamado de qualquer cliente.

A API Web é tipicamente feita como HTTP / REST, nada é definido, saída pode ser para eg. JSON / XML, a entrada pode ser XML/JSON / ou dados simples. Não há padrões para nada => nenhuma chamada automática e descoberta. Você pode fornecer alguma descrição em arquivo de texto ou PDF, você pode devolver os dados no Windows-1250 em vez de unicode, etc. Para descrever o padrão seria 2 páginas brochura com alguma informação simples e você vai definir tudo o resto.

A Web está a mudar para a API / REST da Web. Os serviços Web não são realmente melhores do que Web CONJUNTO. Muito complicado de desenvolver e eles comem muito mais recursos (largura de banda e RAM)... e devido a todas as conversões de dados (requisição->XML->dados->resposta->XML->validação->conversão->dados) são muito lentos.

Eg. Na WebAPI você pode empacotar os dados, enviá-los comprimidos e descomprimir+descomprimir no cliente. No SOAP você só poderia comprimir o pedido HTML.

 -2
Author: csh, 2017-04-13 12:45:55
Duas coisas são muito simples de entender.
  1. API: é uma camada sobre aplicação que pode servir a outra aplicação pedido local.
  2. Serviço Webs: é uma API que pode servir pedido e responder sobre o rede Forma sistema remoto através da web ou internet .

Nota: Todos os Serviços Web são API's mas nem todos API' São web services

 -3
Author: Pavan T, 2018-06-15 17:25:40