it-swarm.com.de

Was ist ein "Webservice" im Klartext?

Ich habe über "Webdienste" hier auf SO, auf Wikipedia, Google usw. gelesen und verstehe nicht ganz, was sie sind. Was ist die einfache englische Definition/Beschreibung?

Wenn ich eine einfache Website mit PHP druckt zum Beispiel eine zufällige Ganzzahl auf die Seite ... ist dies ein "Web-Service"? Wenn nein, warum nicht?

180
MrDatabase

Eine einfache Definition: Ein Webdienst ist eine Funktion, auf die andere Programme über das Web (HTTP) zugreifen können.

Wenn Sie beispielsweise eine Website in PHP, die HTML ausgibt) erstellen, ist das Ziel der Browser und damit auch der Benutzer, der die Seite im Browser liest richtet sich nicht an Menschen, sondern an andere Programme.

Ihre PHP Site, die eine zufällige Ganzzahl generiert, könnte also ein Webdienst sein, wenn sie die Ganzzahl in einem Format ausgibt, das möglicherweise von einem anderen Programm verwendet wird. Es kann sich um ein XML-Format oder ein anderes Format handeln. solange andere programme die ausgabe verstehen können.

Die vollständige Definition ist offensichtlich komplexer, aber Sie haben nach einfachem Englisch gefragt.

279

Vereinfachte, nicht technische Erklärung: Ein Webdienst ermöglicht es einem PROGRAMM, mit einer Webseite zu kommunizieren, anstatt mit Ihrem Browser eine Webseite zu öffnen.

Beispiel: Ich kann zu maps.google.com gehen, meine Privatadresse eingeben und in meinem Browser eine Karte meines Wohnorts anzeigen.

Aber was ist, wenn Sie ein Computerprogramm schreiben, in dem Sie eine Adresse eingeben und eine hübsche Karte anzeigen möchten, genau wie bei Google Maps?

Nun, Sie können ein völlig neues Kartenprogramm von Grund auf neu schreiben. OR= Sie können einen von Google Maps bereitgestellten Webdienst aufrufen, ihm die Adresse senden und eine grafische Karte des Standorts zurückgeben. die Sie in Ihrem Programm anzeigen können.

Es steckt noch viel mehr dahinter, da einige der anderen Posts behandelt werden, aber das Fazit ist, dass Ihre Anwendung entweder Informationen von abrufen oder Informationen an eine Ressource senden kann. Einige andere Beispiele:

  1. Sie können einen Webdienst verwenden, um Informationen zu Büchern bei Amazon.com abzurufen
  2. Sie können einen ähnlichen Webdienst verwenden, um eine Bestellung bei Amazon.com aufzugeben
  3. Sie können einen Webdienst ERSTELLEN, mit dem externe Anwendungen Produktinformationen in Ihrem Unternehmen abrufen können
  4. sie können einen Webdienst erstellen, mit dem externe Anwendungen Aufträge an Ihr Unternehmen senden können.
59
BradC

Ja, das ist ein einfacher Webdienst.

Webservices sind eigentlich nichts anderes als ein Anforderungs-/Antwortmechanismus, mit dem ein Client remote auf Daten zugreifen bzw. diese ändern kann. Es gibt formale Standards für Webdienste (SOAP, SOA etc), aber Ihre einfache Seite ist auch ein Dienst.

Der Hauptnachteil beim Drucken auf einer Seite ist, dass Ihr Dienst HTML zurückgibt. Bevorzugte Datenformate sind JSON und XML, da die meisten Client-Frameworks (und Server-Frameworks) mit JSON und XML erstellt wurden.

Wenn Sie also Ihren Service für die Rücksendung geändert haben:

<RANDOM>some random number</RANDOM>

eher, als:

<HEAD>...</HEAD>  
<BODY>some random number</BODY>

dann wäre es für die meisten Kunden nützlicher

34
David Arno

Vereinfacht ausgedrückt ist ein Webdienst etwas, das Daten als Dienst über das http-Protokoll bereitstellt. Zugegeben, das ist nicht immer der Fall ... aber es ist nah.

Standard Web Services verwenden das SOAP Protokoll, das die Kommunikation und Struktur von Nachrichten definiert, und XML ist das Datenformat.

Web-Services sind so konzipiert, dass Anwendungen, die mit unterschiedlichen Technologien erstellt wurden, problemlos miteinander kommunizieren können.

Beispiele für Webdienste sind Weather.com mit Wetterinformationen, die Sie auf Ihrer Website verwenden können, oder UPS mit einer Methode zum Anfordern von Versandangeboten oder zum Verfolgen von Paketen.

Bearbeiten

Der Wortlaut wurde in Bezug auf SOAP geändert, da dies nicht immer SOAP wie erwähnt, sondern klarer formuliert werden soll. Der Schlüssel ist die Bereitstellung von Daten als Service, nicht als UI-Element.

21
Mitchel Sellers

Ein Webdienst unterscheidet sich von einer Website dadurch, dass ein Webdienst Informationen bereitstellt, die nicht von Menschen, sondern von Software verwendet werden. Infolgedessen sprechen wir normalerweise über exponierte JSON , XML oder SOAP services.

Webdienste sind eine Schlüsselkomponente in "Mashups". Mashups sind, wenn Informationen von vielen Websites automatisch zu einem neuen und nützlichen Dienst zusammengefasst werden. Beispielsweise gibt es Websites, die Google Maps mit Informationen zu Polizeiberichten zusammenfassen, um eine grafische Darstellung der Kriminalität in Ihrer Region zu erhalten. Eine andere Art von Mashup wäre, die von einer anderen Site bereitgestellten realen Börsendaten mit einer gefälschten Handelsanwendung zu kombinieren, um ein Börsenspiel zu erstellen.

Webservices werden auch verwendet, um Nachrichten (siehe RSS), die neuesten Elemente, die einer Website hinzugefügt wurden, Informationen zu neuen Produkten, Podcasts und andere großartige Funktionen bereitzustellen, die die moderne Web-Funktion ausmachen.

Hoffe das hilft!

17
64BitBob

Die beste Erklärung für Klartext ergibt sich aus einer Analogie:

  • Webseiten ermöglichen es Menschen, miteinander zu kommunizieren und zusammenzuarbeiten.
  • Mit Webdiensten können Programme miteinander kommunizieren und zusammenarbeiten.

Ihr PHP Beispiel ist ein Webdienst nach dieser Definition, da die Ausgabe von einem anderen Programm verarbeitet werden könnte. In Wirklichkeit ist HTML-Screen-Scraping jedoch keine zuverlässige oder wartbare Methode zur Erstellung von Webdiensten.

12
RoadWarrior

Für die meisten Websites haben Sie HTML-Seiten, die Sie besuchen, wenn Sie Ihren Browser verwenden. Dies sind für Menschen lesbare Seiten (die in Ihrem Browser gerendert wurden), auf denen möglicherweise viele Daten zusammengepfercht sind, da dies für Menschen sinnvoll ist.

Stellen Sie sich nun vor, jemand anderes möchte einige dieser Daten verwenden. Sie könnten Ihre Seite herunterladen und anfangen, all das "Rauschen" herauszufiltern, um die gewünschten Daten zu erhalten, aber die meisten Websites sind nicht so aufgebaut, dass die Daten zu 100% an der gleichen Stelle für alle Elemente platziert werden umständlich zu sein, wird es auch unzuverlässig.

Geben Sie Webdienste ein.

Ein Webservice ist etwas, das eine Website für diejenigen anbietet, die Daten auf Ihrer Website lesen, aktualisieren und/oder löschen möchten. Sie könnten es eine "Hintertür" zu Ihren Daten nennen. Anstatt die Daten als Teil einer Webseite darzustellen, werden sie auf vorgegebene Weise bereitgestellt, wobei XML und JSON zu den beliebtesten zählen. Es gibt verschiedene Möglichkeiten, mit einem Webservice zu kommunizieren, einige verwenden SOAP, andere REST-fähige Webservices usw.

Allen Webdiensten ist gemeinsam, dass sie maschinenlesbar sind und den Webseiten entsprechen, die die Website ansonsten anbietet. Dies bedeutet, dass andere Benutzer, die die Daten verwenden möchten, eine Anforderung senden können, um bestimmte Daten zurückzugewinnen, die einfach zu analysieren und zu verwenden sind. Auf einigen Websites müssen Sie möglicherweise einen Benutzernamen/ein Kennwort für vertrauliche Daten in der Anforderung angeben, während auf anderen Websites jeder die Möglichkeit hat, die erforderlichen Daten zu extrahieren.

12
Christian P.

Ein Webdienst ist eine Sammlung offener Protokolle und Standards für den Datenaustausch zwischen Anwendungen oder Systemen. Softwareanwendungen, die in verschiedenen Programmiersprachen geschrieben sind und auf verschiedenen Plattformen ausgeführt werden, können mithilfe von Webdiensten Daten über Computernetzwerke wie das Internet austauschen, ähnlich wie bei der Kommunikation zwischen Prozessen auf einem einzelnen Computer. Diese Interoperabilität (z. B. zwischen Java und Python oder Windows- und Linux-Anwendungen) ist auf die Verwendung offener Standards (XML, SOAP, HTTP) zurückzuführen.

Alle Standard-Webdienste arbeiten mit folgenden Komponenten:

  • SOAP (Simple Object Access Protocol)
  • UDDI (Universal Description, Discovery and Integration)
  • WSDL (Web Services Description Language)

Es funktioniert ungefähr so:

  • Das Client-Programm bündelt die Kontoregistrierungsinformationen in einer SOAP Nachricht.
  • Diese SOAP Nachricht wird als Hauptteil einer HTTP POST Anfrage an den Web Service gesendet.
  • Der Webdienst entpackt die SOAP) - Anforderung und konvertiert sie in einen Befehl, den die Anwendung verstehen kann.
  • Die Anwendung verarbeitet die Informationen nach Bedarf und antwortet mit einer neuen eindeutigen Kontonummer für diesen Kunden.
  • Als Nächstes packt der Webdienst die Antwort in eine weitere SOAP Nachricht, die er als Antwort auf seine HTTP-Anforderung an das Client-Programm zurücksendet.
  • Das Clientprogramm entpackt die SOAP Nachricht, um die Ergebnisse des Kontoregistrierungsprozesses zu erhalten.
11
vanguard69

Webservice ist eine Technologie, mit der zwei oder mehr Remote-Webanwendungen über Netzwerk/Internet miteinander interagieren. Es kann mit Java, .net, PHP etc.) implementiert werden.

Funktionen des Webdienstes: -

  1. Bei Verwendung von Webdiensten tauschen zwei oder mehr Systeme Daten über das Netzwerk aus. Der Datenaustausch erfolgt entweder über XML oder JSON.
  2. Jeder Webdienst besteht aus zwei Teilen Server-Ende, auf dem der Dienst bereitgestellt wird, und Client-Teil, auf den die Clients zugreifen. Jeder Webdienst kann mehrere Clients haben. Wenn ein Reiseportal Tickets eines Verkehrsflugzeugs verkauft. Das Portal ist Kunde und die Fluggesellschaft ist der Server, da sie ihren Service verkauft.
  3. Webdienste können synchron oder auch asynchron sein. Eine Webanwendung kann mit vielen Webdiensten interagieren, diese Webdienste sind jedoch lose mit ihren Client-Webanwendungen verbunden. Das bedeutet, dass jede Änderung in der übergeordneten Anwendung nur geringe oder keine Auswirkungen auf die Webservices hat oder umgekehrt.
  4. Webservices können Anhangsdokumente wie PDF, Word usw. mit ihren XML-Nutzdaten übertragen. Java stellt eine separate API für diese Art von Webdiensten bereit.
  5. Ein Webdienst verbirgt immer die interne Komplexität des Dienstes für seine Kunden. Beispielsweise sammelt ein Verkehrsflugzeug, das Tickets über ein Drittanbieterportal verkauft, Endbenutzerinformationen nur über einen Webdienst und stellt dafür Tickets bereit. Das Portal, das Tickets verkauft, muss sich nicht um die interne Komplexität der Ticketreservierungssysteme der Fluggesellschaften kümmern.
  6. Ein Webdienst kann vom Typ fire and forget sein oder etwas zurückgeben. Angenommen, eine Webanwendung möchte nur einige Informationen an eine Drittanbieteranwendung senden. Der Absender benötigt keine Bestätigung vom Empfänger. In dieser Art von Szenario benötigen wir einen Webdienst, der Feuer und Vergessen auslöst.

Simple way to explain web service is ::

  • Ein Webdienst ist eine Kommunikationsmethode zwischen zwei elektronischen Geräten über das World Wide Web.
  • Es kann ein Prozess genannt werden, den ein Programmierer verwendet, um mit dem Server zu kommunizieren.
  • Zum Aufrufen dieses Prozesses kann der Programmierer SOAP etc verwenden.
  • Webservices basieren auf offenen Standards wie TCP/IP und HTTP

Der Vorteil eines Webservices ist, dass Sie einen Code in .net entwickeln und diesen Code mit Java) verwenden möchten. Sie können direkt interagieren mit der abstrahierten Ebene und sind sich nicht bewusst, mit welcher Technologie der Code entwickelt wurde.


Image

6
Devrath

Ein Webdienst, wie er von Softwareentwicklern verwendet wird, bezieht sich im Allgemeinen auf einen Vorgang, der auf einem Remote-Server ausgeführt und mithilfe der XML/SOAP-Spezifikation aufgerufen wird. Wie bei allen Definitionen gibt es Nuancen, aber das ist die häufigste Verwendung des Begriffs.

5
jezell

Ein Betriebssystem bietet eine GUI (und CLI), mit der Sie interagieren können. Es bietet auch eine API, mit der Sie programmgesteuert interagieren können.

Ebenso bietet eine Website HTML-Seiten, mit denen Sie interagieren können, und möglicherweise eine API, die dieselben Informationen und Vorgänge programmgesteuert bereitstellt. Oder diese Dienste sind möglicherweise nur über eine API ohne zugeordnete Benutzeroberfläche verfügbar.

5
John Topley

Web Service ist wie ein Kommunikationsmedium zwischen zwei unabhängigen Programmen. Die Programme verwenden ein angegebenes Protokoll (normalerweise Simple Object Access Protocol (SOAP)) als Medium, um zu verstehen, welche ANFRAGE/ANTWORT sie an dem jeweiligen Ende verarbeiten/ausführen sollen.

3
tolulope david

Eine einfache Definition wäre eine HTTP-Anforderung, die sich wie ein normaler Methodenaufruf verhält. Das heißt, es akzeptiert Parameter und gibt ein strukturiertes Ergebnis zurück, normalerweise XML, das in ein oder mehrere Objekte deserialisiert werden kann.

3
marc

Webdienste sind fast wie normale Webseiten. Der Unterschied besteht darin, dass sie so formatiert sind, dass ein Programm sehr einfach Daten von der Seite abrufen kann, sodass wahrscheinlich kein HTML mehr verwendet wird. Sie sind im Allgemeinen auch zuverlässiger in Bezug auf die Konsistenz des Formats, können einen anderen formalen Prozess verwenden, um den Inhalt einer solchen Seife oder eines rohen XML zu definieren, und es gibt häufig auch ein Deskriptordokument, das die Struktur für die Daten formal definiert.

3
Joel Coehoorn

Gut,

Wie @Vincent Ramdhanie sagte, soll ein Webdienst nicht vom Endbenutzer gesehen/konsumiert werden, sondern von einem anderen Programm. Technisch gesehen lautet die Logik in Ihrem Programm also:

Im Falle eines normalen Programms

user on website -> HTML/JS/JQuery etc -> give me a random number ->ur program

Jetzt

ur program -> generate random number -> generate HTML and encapsulate o/p -> go back to user

aber im Falle eines Webdienstes ändert sich der Fluss ein wenig:

user -> my application -> XML/JSON/some other format -> give me a random number ->ur program Jetzt

ur program -> generate random number -> generate XML/JSON/some other format -> my application -> generate HTML and encapsulate o/p -> go back to user

Hoffe das hilft :)

3
user1079065

Eine Methode zum Senden einer Nachricht zum Aufrufen eines Vorgangs auf einem anderen Computer. Der Unterschied zwischen Webservices und früheren Methoden besteht darin, dass das, was über das Kabel gesendet wird, auf einer höheren Ebene standardisiert ist.

Alter Weg: Beschreiben Sie Endian, Codierung, Portnummern usw. Web-Service: URL, XML

3

Ein Webdienst definiert einen Vertrag mit Aktionen, die ein Server für Sie ausführt. Das Format und das Protokoll spielen keine Rolle, aber Sie sollten eine genaue Definition der Kommunikationsabläufe haben.

In Ihrem Beispiel hängt es davon ab, ob dies in einer anderen Anwendung verwendet wird, die diese Nummer liest. Ja, es handelt sich um einen Dienst. Andernfalls handelt es sich nur um eine Webseite mit einer Nummer.

2
Nick

In einfachen Worten, der Webdienst kann ein beliebiges einfaches Programm sein, z. B .: Fügen Sie zwei Zahlen hinzu, die über das UDDI veröffentlicht werden sollen und von einem anderen Programm verwendet werden können. WSDL verfügt über den Endpunkt, um den Webdienst sowie die Bindungs- und Portdetails zu lokalisieren.

1
Prabhu

"Web Service" besteht aus zwei Wörtern: "Web" und "Service".
Was ist "Web"? "Web" bedeutet "World Wide Web".
"Service" für was? Nicht für Menschen, wenn ja, ist es eine "Webseite", wie z. B. Text, Bilder, Videos usw.
Es ist für Programme, die mit der gleichen Technologie wie das 'Web' über das Internet kommunizieren, wie z. B. TCP, HTTP usw.
"Service" bedeutet auch, dass einige Funktionen bereitgestellt werden, wie z. B. die "Service-Schicht" in CRUD. Es gibt hauptsächlich zwei Arten:
1. SOAP (Simple Object Access Protocol)
2. RESTful (Repräsentative Zustandsübertragung)

0
songxin

Unbeschadet anderer Definitionen würde ich sagen, dass ein Webdienst ein Softwaresystem ist, das die Interaktion von Maschine zu Maschine/von Anwendung zu Anwendung über ein Netzwerk ermöglicht. Diese generischen Definitionen würden auch dazu beitragen, REST Architekturen als Web-Service zu betrachten, da sie ähnliche Funktionen bieten, obwohl sie einen anderen Architekturstil haben als die SOAP, die vollständig definiert ist Protokoll.

0
joedavid