Wie verwende ich SocketRocket mit socket.io?

8

Die neue iOS-Websocket-Bibliothek, SocketRocket , sieht wirklich toll aus und das Chat-Beispielprojekt ist wirklich süß. Der Beispiel-Chat-Server ist in Python geschrieben, von denen ich keine kenne. Ich bin mit socket.io auf node.js etwas vertraut und ziehe es vor, Javascript zu versuchen. Ich versuchte, die SocketRocket TestChat Simulator App mit der node.js (6.10) socket.io (0.8.7) zu verbinden, aber die Verbindung wurde abgelehnt. (Ich bin auch kein Knotenexperte, also kann das eine dumme Frage sein).

In einer aktuellen Antwort auf eine SO Frage , sagte mikelikespie zu op: "Ich schlage vor, deinen Stack zu aktualisieren, um die iOS WebSocket-Bibliothek zu verwenden, die wir gerade veröffentlicht haben."

Was heißt das genau? Was ist erforderlich, damit die SocketRocket-Bibliothek mit einem Knoten socket.io-Server kommunizieren kann? Jeder Beispielcode oder Vorschläge werden sehr geschätzt.

    
seeker12 15.02.2012, 22:35
quelle

3 Antworten

8

Nun, socket.io hat sein eigenes Protokoll, das auf Transportprotokollen wie Websockets oder Long Polling basiert, und SocketRocket ist nur eine Websocket-Bibliothek, nicht mehr. Socket.io verfügt auch über eine Authentifizierung, so dass es nicht mit normalen Web-Sockets verwendet werden kann. Was ich Ihnen vorschlagen zu verwenden ist ein nur WebSocket-Server, nicht mehr als das. Wie ws , die kompatibel sein sollten. Es gibt andere Bibliotheken, aber, ws Ich glaube, dass im Moment aktiv entwickelt wird, und neuer als andere.

Sie können auch Ihre Clientside socket.io kompatibel machen, aber ich denke, es ist nicht erforderlich. Hier sind die Spezifikationen dafür: Ссылка

Ich hoffe, ich habe geholfen.

    
Farid Nouri Neshat 16.02.2012, 17:45
quelle
3

socket.IO-objc auf GitHub scheint reif zu sein Socket.IO / Objective C-Bibliothek

Es verwendet SocketRocket, um die Websocket-Verbindungen zu handhaben.

Dies ermöglicht es Ihnen, einen Socket-Server zu haben, der ältere Browser unterstützt (degradiert zu langem Polling usw.) und weiterhin über SocketRocket auf Ihre iOS-App zugreifen kann.

    
pauliephonic 02.05.2013 12:33
quelle
2

Ich habe gerade eine aktive Socket-Verbindung zwischen einem Node.JS-Server und einer iOS-Anwendung mit dieser Bibliothek implementiert. Ich habe dieses verwendet, weil die README auf Socket.IO-ObjC sagt

  

Die aktuelle Version dieser Bibliothek unterstützt socket.io v1.0 noch nicht.   Wenn Sie also socket.io-objc verwenden möchten, greifen Sie bitte auf v0.9.x zurück.

aber ich möchte immer die neueste Version für alles verwenden. Wenn Sie also Socket.IO v1.0 verwenden möchten, können Sie den auf der obigen Zeile angegebenen Link verwenden.

    
desert aibō 03.09.2014 17:40
quelle