Tag: socket.io

在socket.io api文档中,“Server(srv:http#Server,opts:Object)”是什么意思?

以上提到,我想知道socket.io api文件中特殊字符的含义,下面的链接。 https://github.com/Automattic/socket.io#serversrvhttpserver-optsobject 在那个文件里,一些标题使用#,:,srv和我都不明白他们的意思。 另一个问题是,有谁知道socket.io的教程或指导职位? 官方文件只有几个例子,对我的解释是不够的。 谢谢。

我调用Socket.io函数和Uncaught TypeError:undefined不是一个函数

我正在做socket.io聊天应用程序,并在JavaScript中遇到麻烦。 这是我的JavaScript文件(客户端) <script src="https://cdn.socket.io/socket.io-1.2.0.js"></script> <script src="https://code.jquery.com/jquery-1.10.2.js"></script> <script> $(document).ready(function() { // make a new chat div $("#topic_button").click(function(e) { e.preventDefault() var domElement = $('<div class="content"><div class="messages"><ul class = "other_message" class="title"><h3>'+$("#m").val()+'</h3></ul>'+'상대방'+'<div class="my_message">'+'내메시지' +'</div></div><div class="type_div"><form action="" class="chat_form" onsubmit="event.preventDefault();"><input autocomplete="off" /><button class="chat_button">Send</button></form></div></div>'); $("#content").after(domElement); }); // create a new category $("#topic_button").click(function(e){ var $item = $('<div class="item_div"><li>' + $("#m").val() + '</li><button class="item_button">X</button><div></div></div>') […]

Node.js和Redis在同一台服务器上?

我们使用云托pipe(Linode)来托pipe基于node.js的(和socket.io)聊天应用程序,并以redis作为主要数据库。 我们还没有启动,但是我们正在考虑在同一台机器上托piperedis和node.js(8 GB实例,redis限制为5 GB)。 所有的通信都将在redis中进行(即直接从客户端到redis,node.js中没有对话框的variables)。 为了避免其他瓶颈的networking旅行时间,我们正在考虑在同一台服务器上托piperedis和node.js。 我不能在文档中find任何certificate这个主意不好的东西,但是我们的系统pipe理员不相信。 沿着这条路线有没有什么缺点?

Node.js – socket.io – 对io.sockets的引用突然未定义

我有一个node.js服务器运行一个简单的socket.io服务 当我引用this.io.sockets为了build立一个“连接”处理函数,它工作正常。 但是,如果我稍后引用this.io.sockets ,我得到一个错误 TypeError: Cannot read property 'sockets' of undefined 我很新的node.js所以我不知道我在做什么错在这里。 码: var app = require('http').createServer(); var port = 8080; app.listen(port); function Serv() { this.io = require('socket.io')(app) this.addHandlers() } Serv.prototype.addHandlers = function () { this.io.sockets.on("connection", function (socket) { console.log('new connection'); socket.on('disconnect', function () { console.log('disconnection'); if (this.io.sockets.adapter.rooms[phn] != null) { //Causes undefined error.. //do […]

将一个socket.io套接字与一个express.js会话进行匹配

我试图将前端服务器连接到我们的通知服务,然后将前端服务器连接到浏览器。 通知服务是实时的,并在发送的通知数据中包含收件人用户标识。 我没有通知服务发送数据和前端服务器接收它的问题。 我可以将它连接到浏览器并断开连接,就像这样: io.on('connection', function (socket) { console.log('connected'); socket.on('disconnect', function () { console.log('disconnected'); }); }); 我现在需要知道用户login到前端服务器,所以我知道哪个用户/套接字发送通知。 如果我把连接监听器放在一个中间件函数中,我们可以从我们的快速会话中获取这些数据: var allClients = {}; function useSocket (req, res, next) { io.on('connection', function (socket) { allClients[req.session.userId] = socket; socket.on('disconnect', function () { console.log('disconnected'); allClients[req.session.userId].removeAllListeners(); // we were also suggested things like socket.close() which did not help }); }); […]

websocket客户端到socket.io

我需要一个服务器能够接受来自websocket和socket.io客户端的连接,这是可能的吗? 当我运行的只是socket.io,也socket.io客户端工作正常,但标准的WebSocket客户端无法连接。 另一方面,当我与socket.io一起运行websocket服务器,websocket崇拜,但在浏览器,这是试图通过socket.io连接,我看到错误WebSocket connection to … failed: Invalid frame header 。 是否有可能使两个连接在单个服务器实例上工作? 我正在使用express.io和websocket节点 ,这将是很好的让它只与express.oi工作。

sails.io.js – 从“Resourceful PubSub”断开连接

我正在构build一个单页的Web应用程序,在后端使用sails.js ,并通过socket.io.js套接字io包装来连接。 我有一个小帮手类让我订阅我的模型: subscribe(model, next) { io.socket.get('/' + model, function serverResponded (body, JWR) { if (JWR.statusCode == 200) { next(null, body, JWR.headers); } next('The socket server responded with a bad status code ' + (JWR.statusCode), null, JWR.headers); }); } 所以这个工程(我想,不知道如何得到更新推送给我,但是,),但是,当用户更改我的Web应用程序中的页面,我应该如何断开这个“订阅”,并保持连接,因为它的单个页面? 我看到io.socket.disconnect()但不知道如何适应它。

Singleton结构用于套接字连接

我可以使用Singleton结构套接字连接到我的节点服务器吗? 我只想用一个套接字将所有需要的数据从客户端(网站)传输到服务器(节点服务器)。 可能吗? 如果可能,那么如何?

如何使用nodejs在一个文件中添加一个事件监听器在一个不同的文件中的发射器?

我是新来的这个JavaScript的东西,所以我相信这是一个简单的问题。 文件结构如下所示: /app.js /app/controller/users.controller.js /app/routes/socketio.js 我想有一个emit函数,当users.js中调用一个特定的控制器时触发,而socketio.js文件中的一个侦听器将会启动它。 这样做的目的是当控制器调用更新数据库的函数时,我希望它将结果推送到已经连接到仪表板的socketio。 我知道如何创build一个发射/侦听器事件,当他们在同一个文件中,但我不知道如何让他们之间的文件/目录之间的谈话。 提前致谢! 更新:这里是代码的样子(我已经简化了一堆,以摆脱不必要的信息): // /app.js var express = require('express'); var path = require('path'); var routes = require('./routes/index'); var app = express(); app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'ejs'); app.use(express.static(path.join(__dirname, 'public'))); app.use('/', routes); var debug = require('debug')('nodemit:server'); var http = require('http'); var server = http.createServer(app); var io = require('socket.io').listen(server); var […]

如何使用GET或POST方法将对象详细信息传递给index.html,并将其显示在HTML <pre>标记中

我有一个套接字对象 var express = require('express'); var util = require('util'); var app = express(); var server = require('http').createServer(app); var io = require("socket.io").listen(server); 加载index.html app.get("/", function(req, res){ res.sendFile(__dirname+ "/index.html"); }) 为了查看实际的io Object包含了什么,我正在使用util var io_ObjectDetails = util.inspect(io, {showHidden: false, depth: null}); 问题是如何使用GET或POST方法将io_ObjectDetails传递给index.html并将其显示在HTML标记中