Ich habe in letzter Zeit versucht, Socket.io zu verstehen, aber ich bin kein großartiger Programmierer, und fast jedes Beispiel, das ich im Internet finden kann (glauben Sie mir, ich habe stundenlang gesucht), enthält zusätzliche Dinge, die die Dinge komplizieren. Viele der Beispiele machen eine Reihe von Dingen, die mich verwirren, oder stellen eine Verbindung zu einer seltsamen Datenbank her oder verwenden Coffeescript oder Tonnen von JS-Bibliotheken, die die Dinge durcheinander bringen.
Ich würde gerne ein einfaches, funktionierendes Beispiel sehen, bei dem der Server nur alle 10 Sekunden eine Nachricht an den Client sendet und angibt, wie spät es ist, und der Client diese Daten auf die Seite schreibt oder eine Warnung auslöst, was sehr einfach ist. Dann kann ich von dort aus Dinge herausfinden, Dinge hinzufügen, die ich brauche, wie z. B. Datenbankverbindungen usw. Und ja, ich habe die Beispiele auf der Website socket.io überprüft und sie funktionieren nicht für mich und ich verstehe nicht, was sie tun .
Antworten:
Bearbeiten: Ich denke, es ist besser für jeden, das hervorragende Chat-Beispiel auf der Socket.IO-Startseite zu konsultieren . Die API wurde ziemlich vereinfacht, seit ich diese Antwort gegeben habe. Davon abgesehen ist hier die ursprüngliche Antwort, die für die neuere API klein-klein aktualisiert wurde.
Nur weil ich mich heute gut fühle:
index.html
app.js.
quelle
Hier ist meine Vorlage!
Wenn Sie diesen Code in eine Datei mit dem Namen hello.js einfügen und ihn mit dem Knoten hello.js ausführen, sollte die Nachricht hallo ausgedruckt werden. Sie wurde über zwei Sockets gesendet.
Der Code zeigt, wie die Variablen für eine Hallo-Nachricht behandelt werden, die vom Client an den Server über den Codeabschnitt mit der Bezeichnung // Spiegeln gesendet wird.
Die Variablennamen werden lokal und nicht alle oben deklariert, da sie nur in jedem der Abschnitte zwischen den Kommentaren verwendet werden. Jedes dieser Elemente kann sich in einer separaten Datei befinden und als eigener Knoten ausgeführt werden.
quelle
Vielleicht hilft Ihnen das auch. Ich hatte einige Probleme damit, meinen Kopf um die Funktionsweise von socket.io zu wickeln, also versuchte ich, ein Beispiel so weit wie möglich zu reduzieren.
Ich habe dieses Beispiel aus dem hier veröffentlichten Beispiel angepasst: http://socket.io/get-started/chat/
Beginnen Sie zunächst in einem leeren Verzeichnis und erstellen Sie eine sehr einfache Datei mit dem Namen package.json . Fügen Sie Folgendes ein.
Verwenden Sie als Nächstes in der Befehlszeile npm, um die für dieses Beispiel erforderlichen Abhängigkeiten zu installieren
Dies kann abhängig von der Geschwindigkeit Ihrer Netzwerkverbindung / CPU / usw. einige Minuten dauern. Um zu überprüfen, ob alles wie geplant verlaufen ist, können Sie die Datei package.json erneut anzeigen .
Erstellen Sie eine Datei mit dem Namen server.js. Dies ist offensichtlich unser Server, der vom Knoten ausgeführt wird. Fügen Sie den folgenden Code ein:
Erstellen Sie die letzte Datei mit dem Namen index.html und fügen Sie den folgenden Code ein.
Sie können dieses sehr einfache Beispiel jetzt testen und eine Ausgabe ähnlich der folgenden sehen:
Wenn Sie einen Webbrowser öffnen und auf den Hostnamen verweisen, auf dem Sie den Knotenprozess ausführen, sollten in Ihrem Browser dieselben Nummern angezeigt werden, zusammen mit allen anderen verbundenen Browsern, die dieselbe Seite anzeigen.
quelle
Mir ist klar, dass dieser Beitrag jetzt mehrere Jahre alt ist, aber manchmal brauchen zertifizierte Neulinge wie ich ein funktionierendes Beispiel, das auf die absolut einfachste Form reduziert ist.
Jedes einfache Beispiel für socket.io, das ich finden konnte, war http.createServer (). aber was ist, wenn Sie ein bisschen socket.io Magie in eine vorhandene Webseite aufnehmen möchten? Hier ist das absolut einfachste und kleinste Beispiel, das ich finden könnte.
Dies gibt nur eine Zeichenfolge zurück, die von der Konsole UPPERCASED übergeben wurde.
app.js.
index.html:
laufen:
Verwenden Sie so etwas wie diesen Port-Test, um sicherzustellen, dass Ihr Port offen ist.
Navigieren Sie jetzt zu http: //localhost/index.html und verwenden Sie Ihre Browserkonsole, um Nachrichten an den Server zurückzusenden.
Wenn Sie http.createServer verwenden, werden bestenfalls die folgenden zwei Zeilen für Sie geändert:
Ich hoffe, dieses sehr einfache Beispiel erspart meinen Neulingen einige Probleme. und bitte beachten Sie, dass ich mich von der Verwendung von "reservierten Wörtern" ferngehalten habe, die benutzerdefinierte Variablennamen für meine Socket-Definitionen suchen.
quelle
every simple socket.io example i could find involved http.createServer(). but what if you want to include a bit of socket.io magic in an existing webpage
mhm ja ...var app = http.createServer(
- wutindex.html
index.js
Und führen Sie diese Befehle für die Anwendung auszuführen.
und öffnen Sie die URL: -
http://127.0.0.1:3000/
Port kann unterschiedlich sein. und Sie werden diesen AUSGANG sehenquelle