Ich entwickle eine Java API für eine Addrroid App im Frühling. Im Moment ist meine API 100% REST und statuslos. Damit der Client Daten empfängt, muss er zuerst eine Anfrage senden.REST Server zu Client Kommunikation
Allerdings, was ich brauche, ist der Server, um Daten an den Client/nicht der Client an den Server fisrt/senden, wenn es mit seiner Aufgabe fertig ist.
Ich denke, dass eine Art von Sitzung zwischen den beiden Parteien erstellt werden muss.
Meine Frage ist: Wie kann ich diese Funktionalität des SERVER erreichen, der Daten an den KUNDEN sendet, wenn er mit seiner Aufgabe fertig ist?/Es ist nicht bekannt, wie lange die Aufgabe dauert./
Welche Art von API sollte ich für diesen Zweck entwickeln?
Eine idiotische Problemumgehung sendet eine Anfrage an den Server alle n Sekunden, aber ich suche nach einem intelligenteren Ansatz.
Würde die Umstellung auf eine Web-Sockets-Kommunikation funktionieren? Auf diese Weise können Sie asynchron kommunizieren – mvlupan
Danke, ich werde es sofort überprüfen – BabbevDan
Eine andere Option ist JMS Themen zu verwenden, und der Server eine Nachricht zu dem Thema platzieren, wenn die Daten bereit sind, würde der Client auf das Thema hören, Wenn der Client eine Nachricht zu diesem Thema erhält, ruft der Client den Dienst des Servers auf, um die Daten abzurufen. ref: http://docs.oracle.com/javaee/6/tutorial/doc/bncdq.html – mangotang