Tag: 套接字

socket.io中的这个代码是什么意思

我是使用socket.io和node.js进行实时编程的新手。 我已经看到这个博客网站的代码,不幸的是没有发表任何评论或解释下面的代码: socket.on( 'new_message', function( data ) { io.sockets.emit( 'new_message', { name: data.name, address : data.address }); }); 我已经检查了socket.io文档,但没有足够的解释与使用XAMMP的PHP服务器有关。 我正在使用PHP作为我的服务器端脚本语言,上面的代码与PHP脚本进行通信,但我不知道这些代码的含义。 在socket.on之后,有一个名字叫'new_message'。 我不知道它是如何工作的。 另外,还有JSON名称:data.name,emit函数,..我不知道这些在哪里 有人会试图解释这是怎么回事?

如何更新附加div的数量

我正在构build一个套接字聊天程序,每次有人join聊天室时,都会增加显示用户数量的徽章。 下面的代码是将新用户的名称添加到用户列表的function。 新的名字被添加为id =“elementInPeople。我的问题是徽章只显示1,即使多个用户已经进入聊天。任何build议如何我可以解决这个问题? socket.on("update-people", function(people){ $("#people").empty(); $.each(people, function(clientid, name) { $people.append('<div id="elementInPeople">' + name + '</div>'); var np = $("#elementInPeople").length; $("#numberOfPeopleOnline").text(np); }); }); 服务器端: socket.on("connection", function(client) { client.on("join", function(name){ console.log("Someone joined the chat"); people[client.id] = name; client.emit("updateToSelf", "You have connected to the server. Join or create room to chat"); socket.sockets.emit("update-people", people); client.broadcast.emit('updateToOthers', name + […]

我如何使用socket.io?

好日子,我正在尝试使用socket.io我面临404 not found一些问题。 我使用:84作为我的xampp端口 文件夹结构 –tests –node_modules –app.js –index.html 这是我的html内容 <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/1.7.3/socket.io.js"></script> <script> var socket = io.connect('http://localhost:84/test/'); socket.on('news', function (data) { console.log(data); socket.emit('my other event', { my: 'data' }); }); </script> 和这个app.js var app = require('http').createServer(handler) , io = require('socket.io').listen(app) , fs = require('fs') app.listen(8080); function handler (req, res) { fs.readFile(__dirname + '/index.html', function (err, […]

节点networkingsocket.end事件触发两次?

这个事件发射两次。 我试图找出原因。 在一个客户端,我有: import Net from 'net'; import Chalk from 'chalk'; const fallback = [2,5,10,25,50,100,250,500,1000,2000]; class LocalNetworkInterface { constructor({path}) { this._sock = new Net.Socket(); this._pending = {}; this._count = 0; this._retry = 0; const connect = () => { this._sock.connect({path}); }; this._sock.on('connect',() => { this._retry = 0; console.log(`Connected to ${Chalk.underline(path)}`); }); this._sock.on('data',buffer => { let […]

如何使用会话在angular,nodejs,socket.io中保存数据

我需要使用会话来保存angularjs,nodejs和socket.io中的数据。 当我closures我网站的网页时,我希望会话也被清除。 例如: 我在函数express中有一个值usename app.get('/',function(req,res,next){ var username=req.session.username; }); 现在我需要在函数套接字中使用这个值 socket.on("message",function(){ var usernameSocket= username; }) 但是usernameSocket的值不好 当我在angularjs中,如何获得req.session.username的值,并将其保存在我的sessionStorage的angular? 谢谢

用socket.io和webpack构build一个反应应用程序是行不通的

本周我正在阅读有关这个​​问题的所有内容,但networking上的任何解决scheme都不适用于我正在开发的项目。 我正在使用反应和相关技术在webapp中工作。 为了使编译过程中使用新版本的webpack(v2.3.2)。 我有我的服务器webpackconfiguration与我的客户端webpackconfiguration分开。 所有的工作都很好,直到我添加了socket.io来创build一些实时组件。 应用networking中的所有解决scheme我仍然在运行我的捆绑脚本时收到以下警告: WARNING in ./~/express/lib/view.js 80:29-41 Critical dependency: the request of a dependency is an expression WARNING in ./~/socket.io/lib/index.js 109:11-32 Critical dependency: the request of a dependency is an expression WARNING in ./~/engine.io/lib/server.js 115:15-37 Critical dependency: the request of a dependency is an expression 当我尝试启动我的项目时,出现以下错误: return /*require.resolve*/(!(function webpackMissingModule() { var e […]

我可以使用套接字将JAVA与Javascript进行通信吗?

所以,我有这个Java应用程序返回给我一些数据。 这些数据打印在TXT中,并保存在我的电脑上。 我想通过Socket发送这个信息,而不是保存在TXT中。 (下面的例子) Java的 public static void main(String argv[]) throws Exception { Socket clientSocket = new Socket(); SocketAddress sockaddr = new InetSocketAddress("localhost", 3000); clientSocket.connect(sockaddr); clientSocket.close(); } 节点JS var app = require('express')(); var http = require('http').Server(app); var io = require('socket.io')(http); app.get('/', function(req, res){ res.sendFile(__dirname + '/index.html'); }); io.on('connection', function(socket){ console.log('a user connected'); socket.on('disconnect', function(){ console.log('user […]

运行多个使用Socket.io的服务的最佳方式是什么?

我正在开发一个网站,我将使用微服务。 我将有一个或多个将使用Socket.io的Node.js应用程序。 我试图弄清楚我将如何构build这个。 我可以使用多个Node.js与Socket.io连接到用户,还是会遇到冲突? 我可以使用NGiNX作为UUID的代理来识别发送请求的微服务。 这是否做出敏感? 有没有更好的办法? 或者我也想使用一个Node.js有一个代理接收所有的Socket.io连接,然后创build一个与用户的连接。 但是这似乎增加了networking负载,因为我正在添加另一个微服务。 无论如何,我会喜欢你的意见。

Node.JS和Java PUB / SUB

我试图build立一个应用程序,通信将由一个node.js服务器完成。 该节点服务器将接收来自其他对等方的消息。 我的node.js代码是: var zmq = require('zmq'), socket = zmq.socket('sub'); socket.bind('tcp://127.0.0.1:5556', function (err) { if (err) { console.log('Error: ', err); throw err; } socket.on('message', function (envelope, blank, data) { console.log(arguments); }); socket.on('error', function (err) { console.log(arguments); }); }); 在系统的其他部分,有一个java服务器应该为这个服务器发送消息。 这是我的java代码: Context context = ZMQ.context(1); Socket publisher = context.socket(ZMQ.PUB); publisher.connect("tcp://127.0.0.1:5556"); for (int request_nbr = 0; request_nbr […]

socket.io客户端没有收到消息

当没有指定的房间客户端收到消息,但指定一个房间时,我无法在客户端上接收消息。 server.js var socket = require('socket.io'); var mysql = require('mysql'); const path = require('path'); var express = require('express'); var app = express(); var server = require('http').createServer(app); var io = socket.listen(server); var port = PORT; io.on('connection', (socket) => { console.log('new connection made'); socket.on('subscribe', function (room) { socket.room = room; socket.join(socket.room, function () { console.log('joined:' + room); […]