SOAP and Restful im Vergleich zu HttpURLConnection?

T

the_time

Ambitioniertes Mitglied
0
Hallo,
es gibts mehrere Methoden um ein Android Gerät mit dem Datenbank-Server zu verbinden z.B:

  • java.net(Socket, Url, HttpUrlConnection, etc.)
  • org.apache (HttpClient, HttpRequest, HttpResponse, etc.)
  • android.org (AndroidHttpClient, URL, AndroidStream, etc.)
Zu welchem dieser drei kann ich SOAP and Restful zuordnen? Und was ist der Unterschied zwischen SOAP and Restful und Bibliotheken wie vollega, HttpOk, Retrofit, etc.?
 
Ähm, eigentlich sind die Informationen (sogar in Deutsch) im Netz zu finden.

http://de.m.wikipedia.org/wiki/SOAP
http://de.m.wikipedia.org/wiki/Representational_State_Transfer
...

Was Sockets sind und was HTTP Request und Response findet man übrigens auch, wenn man die Google Suche nutzt.
Damit kannst die meisten Deiner Fragen selbst beantworten und wenn dann noch welche auftauchen, schreib einfach nochmal.

Ich persönlich nutze lieber SOAP Webservices wegen der zwingend konkreten WSDL Spezifikation, obwohl SOAP oft als altbacken verschrien wird.
 
Danke für die Antwort. An sich habe ich gestern gegoogelt aber Ich wusste nicht ob man Restful und SOAP mit Socket verwenden kann und ich weiß das immer noch nicht. darüber stand nicht im Links.
Ich weiß dass SOAP and Restful stürtzen sich auf http und TCP/IP zu übertragung von Daten und dass SOAP nicht umbedingt durch Http und TCP protocolle implementiert werden muss.
 
Zuletzt bearbeitet von einem Moderator:
Na ja, meines Wissens arbeiten Sockets mit Streams. Kannst Dir das wie bei nem Video vorstellen. Du machst nen Socket auf und alle Dattenpakete des Videos kommen nacheinander reingetröpfelt. Anders ist das bei SOAP und REST Webservices, wie ich sie kenne. Da schickt man an eine URL eine XML SOAP Message als Request oder bei REST ne URL mit Parametern als Request und bekommt eine Response als SOAP XML oder bei Rest als JSON bzw. XML.
Ob sich das inzwischen durch die WebSockets etwas weiter entwickelt hat, kann ich Dir nicht genau sagen. Mit den zukünftigen Standards HTTP2 bzw. SPDY sollen auch Sockets integriert werden. Aber das nutze ich noch nicht. Gerade im Geschäftskundenumfeld hat man ja meist mit älteren Browsern zu tun, die den neuen Kram gar nicht verstehen.
 
Also das ganze lässt sich so unterteilen um ein Android Gerät mit dem Server zu verbinden?
1) Sockets (java.net)
2) Web services
a) SOAP
b) Restful
c) WSDL
 
Zuletzt bearbeitet:
Ich vermisse den Bezug zu Android im Allgemeinen. Willst du eine App entwickeln oder geht es nur um grundsätzliche Aufklärung der möglichen Methoden?
 
Ich will doch was entwickeln aber ich will davor die möglichen Technologien verstehen
 
Kein Problem - mir ging es nur darum ob die Diskussion im Entwickler- oder im allg.EDV-bereich besser aufgehoben ist. Daher nun in den Entwicklerbereich verschoben.
 
Du vergleichst hier aber auch etwas Äpfel mit Birnen!

SOAP und REST sind die High Level Protokolle, die definieren, wie die Daten bzw die Schnittstelle zur Anwendung aussehen.
Socket, UrlConnection usw. sind verschiedene Möglichkeiten um eine Verbindung auf verschiedenen Netzwerk Layern aufzubauen. Wie darauf die Daten ausgetauscht werden interessiert die erstmal nicht. Da kannst du prinzipiell sowohl SOAP als auch REST mit realisieren. Um das zu vereinfachen ist OkHttp eine lib. Die verschiedenen Apis die du genannt hast bieten dir nur verschiedenen Abstraktionen für die selbe Sache.

Und dann hast du noch retrofit erwähnt. Das ist eine lib, die dir auf sehr hohem Level erlaubt eine REST Schnittstelle zu beschreiben und anzufragen. Intern wird bei retrofit mit OkHttp gearbeitet für die Verbindung.
 
Entweder selber eine eigene REST Schnittstelle mit URLConnection programmieren, oder eine lib, die mit URLConnection arbeitet, einbinden,

Seit 2.3 ist HttpClient die schlechtere Wahl. Die gesamte Netzwerkkommunikation wird seitdem für UrlConnection optimiert.

Android’s HTTP Clients | Android Developers Blog
 

Ähnliche Themen

L
Antworten
15
Aufrufe
909
jogimuc
J
D
  • djsnoopy
Antworten
6
Aufrufe
617
djsnoopy
D
S
Antworten
8
Aufrufe
512
swa00
swa00
Zurück
Oben Unten