Pergunta

Qual é a diferença entre um webservice e uma API? É a diferença mais do que o protocolo usado para transferir dados? obrigado.

Foi útil?

Solução

Uma API (Application Programming Interface) é o meio pelo qual terceiros podem escrever código que interage com outro código. Um serviço Web é um tipo de API, que quase sempre opera sobre HTTP (embora alguns, como SOAP, pode usar transportes alternativos, como SMTP). A definição W3C oficial menciona que Web Services não necessariamente usar HTTP, mas isso é quase sempre o caso, e é geralmente assumido salvo indicação em contrário.

Para exemplos de serviços web especificamente, consulte SABÃO , RESTO , e XML-RPC . Para um exemplo de um outro tipo de API, uma escrita em C para utilização numa máquina local, ver o Linux Kernel API .

Quanto ao protocolo vai, um serviço Web API quase sempre usa HTTP (daí a parte Web), e definitivamente envolve a comunicação através de uma rede. APIs em geral pode usar qualquer meio de comunicação que desejarem. O kernel Linux API, por exemplo, usa Interrupções para invocar as chamadas de sistema que compõem sua API para chamadas de espaço do usuário.

Outras dicas

Basicamente, um webservice é um método de comunicação entre duas máquinas, enquanto uma API é uma camada exposta, permitindo que você programa contra alguma coisa.

Você poderia muito bem ter uma API e o principal método de interagir com essa API é através de um webservice.

As definições técnicas (cortesia da Wikipedia) são:

API

Uma interface de programação de aplicações (API) é um conjunto de rotinas, estruturas de dados, classes de objetos e / ou protocolos fornecidos por bibliotecas e / ou serviços do sistema operacional, a fim de apoiar a construção de aplicações.

Webservice

Um serviço de Web (também Web Service) é definido pelo W3C como "um sistema de software projetado para suportar interação interoperável máquina-a-máquina em uma rede"

Em um sentido genérico um webservice é a API através de HTTP. Eles muitas vezes utilizam JSON ou XML, mas existem algumas outras abordagens bem.

APIs são uma interface publicada que define comunica uma como componente com o componente B.

Por exemplo, Doubleclick tem uma API Java publicado que permite aos usuários para interrogar as tabelas de banco de dados para obter informações sobre a sua campanha de publicidade on-line.

por exemplo. GetNumberClicks de chamada (nome de usuário)

Para implementar a API, você tem que adicionar o arquivo do Doubleclick .jar para o seu caminho de classe. A chamada é local.

Um serviço web é uma forma de API onde a interface é definida por meio de um WSDL. Isso permite remoto chamando de uma interface através de HTTP.

Se Doubleclick implementado sua interface como um serviço web, que iria usar algo como Axis2 rodando dentro Tomcat.

O usuário remoto iria chamar o serviço web

por exemplo. chamar GetNumberClicksWebService (nome de usuário)

eo serviço GetNumberClicksWebService chamaria GetNumberClicks localmente.

API (Application Programming Interface), a forma completa em si sugere que sua uma interface que permite que você programa para a sua aplicação com a ajuda ou apoio de interface de algum outro aplicativo que expõe algum tipo de funcionalidade que é útil para a sua aplicação.

por exemplo mostrando atualizadas as taxas de câmbio em seu site iria precisar de algum terceiro Interface para programa contra a menos que você pretende ter o seu próprio banco de dados com taxas de câmbio e atualizações regulares para o mesmo. Este conjunto de funcionalidades é quando já disponível com alguma outra pessoa e quando querem compartilhar com os outros eles têm que ter um ponto final para se comunicar com as outras pessoas que estão interessadas em tais interações para que implantá-lo em web por meio de web- Serviços. Este ponto final é nada, mas de interface de sua aplicação que você pode programar contra daí API.

API é a integração baseada em código enquanto o serviço web é mensagem de integração baseada em normas interoperáveis ??ter um contrato como o WSDL.

Pense em serviço Web como uma api web. API é um termo geral agora assim um serviço web é uma interface para a funcionalidade, geralmente negócios relacionados, que você pode começar a partir da rede através de uma variedade de protocolos.

Marque esta http://en.wikipedia.org/wiki/Web_service

Como o link mencionado em seguida, Web API é um desenvolvimento em serviços da Web que provavelmente se relaciona com a Web 2.0, enquanto serviços SOAP com base são substituídos por comunicações baseadas em REST. Note-se que os serviços REST não exigem XML, SOAP, ou definições de serviço de API WSDL então isso é importante diferente para serviço web tradicional.

outro exemplo: google mapa api vs serviço Web API direção google, enquanto os ex-serve (entrega) de arquivos javascript para o site (que pode então ser usado como uma API para fazer novas funções), a tarde é um serviço web de lazer dados de entrega (em json ou formato xml), que podem ser processados ??(mas não utilizados num sentido API).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top