In diesem Artikel wird der spezifische Code von Node+Socket zur Implementierung eines einfachen Chatrooms zu Ihrer Information bereitgestellt. Der spezifische Inhalt ist wie folgt Serverconst net = erfordern('net') const server = net.createServer() //Benutzerliste let clients = [] //Auf Verbindungen warten server.on('connection',client=>{ client.on('Daten',(Block)=>{ let data = chunk.toString() wenn(data.match(/login:(.*)/)){ let name = data.match(/login:(.*)/)[1] Clientname = Name Clients.push(Client) console.log(`Benutzer ${name} ist online`) }anders{ für (const Client von Clients) { wenn(client.name!==JSON.parse(data).name){ client.write(Daten) } } } }) client.on('schließen',()=>{ console.log(`Benutzer ${client.name} ist offline`) }) client.on('Fehler',()=>{ console.log(`Für Benutzer ${client.name} ist ein Fehler aufgetreten`) }) }) server.on('Fehler',(err)=>{ console.log('Serverfehler',err) }) server.on('schließen',()=>{ console.log('Server herunterfahren') }) server.listen(9527,()=>{ console.log("Server gestartet") }) Kundeconst net = erfordern('net') const readline = erforderlich('readline') //Eingabeinformationen lesen const rl = readline.createInterface({ Eingabe: process.stdin, Ausgabe: process.stdout }); //Name const name = Prozess.argv[2] //Mit dem Server verbinden const client = net.createConnection({port:9527},()=>{ console.log(Name+'Mit Server verbinden'); client.write(`login:${name}`) Clientname = Name //Starten Sie das Senden von Informationen sendMsg(client) }) client.on('Daten', (Block) => { let Daten = JSON.parse(chunk.toString()) wenn(Daten){ Konsole.log(`[${data.name}] : ${data.msg}`) } }); client.on('Ende', () => { console.log('Verbindung zum Server getrennt'); }); client.on('Fehler', () => { console.log('Serverfehler'); }); //Rekursive Ausgabefunktion sendMsg(client){ rl.question('',(Zeile)=>{ Client.schreiben(JSON.stringify({ Name:Client.Name, msg:Zeile })) sendMsg(Client) }) } DemoServer Kunde 1 Kunde 2 Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: MySql 8.0.16-win64 Installations-Tutorial
>>: Implementierung eines Docker-Cross-Host-Netzwerks (manuell)
Einführung Als ich mehr über die Datenbanktheorie...
Inhaltsverzeichnis Vorwort 【Protokoll rückgängig ...
Das Erdbeben in Wenchuan am 12. Mai 2008 in Sichu...
Klicken Sie hier, um zum Abschnitt „HTML-Tutorial“...
1. Installation der dekomprimierten Version (1). ...
Die Verwendung der ElementUI-Paging-Komponente Pa...
Ich hatte dieses Problem in letzter Zeit beim Desi...
Beim Installieren von Paketen auf einem Ubuntu-Se...
In diesem Artikel wird der spezifische Code für J...
Inhaltsverzeichnis 1. Vom Benutzer erstelltes Skr...
xml <?xml version="1.0" encoding=&qu...
Inhaltsverzeichnis Installieren Sie MySQL Konfigu...
Aus Sicherheitsgründen erlaubt MySql-Server nur d...
Das Thema, das ich heute mit Ihnen teilen möchte,...
Mit der zunehmenden Anzahl offener Plattformen ver...