Tag: socket.io

风险套接字请求日志未定义

不是一个真正的问题,但有点困扰我; 启动我的应用程序后,所有的套接字请求(例如/api/articles/subscribe )日志undefined到控制台,如下所示: GET /api/articles 200 180.463 ms – 27767 GET /api/articles/subscribe undefined – ms – – 第一个请求是HTTP,第二个是套接字。 为什么是这个,我该如何解决这个问题? 编辑我的路线: 'get /api/articles': 'ArticlesController.index', '/api/articles/subscribe': 'ArticlesController.subscribe', 我正在使用GET路由( GET /api/articles )以JSON格式获取我的所有文章。 在查看文章时,我通​​过订阅特定的房间 io.socket.get('/api/articles/subscribe', function(data, jwt) { … 订阅方法本身 subscribe: function(req, res) { if(typeof req.user !== 'undefined') { sails.sockets.join(req.socket, 'articles'); return res.ok(); } } 订阅的作品很好,但总是有这个GET /api/articles/subscribe undefined – […]

使用express和socket.io节点js – 找不到socket.io.js

我正在使用socket.io处理js应用程序。 我看了一些关于这个问题的答案,但他们不能帮助我解决问题。 我得到的错误是 Failed to load resource: the server responded with a status of 404 (Not Found) localhost/:10 Uncaught ReferenceError: io is not defined 这是我的目录结构: Judgement |—-node_modules |—-|—-express |—-|—-socket.io |—-public |—-|—-css |—-|—-|—-judgementMain.css |—-|—-js |—-|—-|—-form.js |—-|—-index.html |—-server.js |—-package.json 在我的index.html页面中,我有以下的链接到socket.io.js <script type="text/javascript" src="socket.io/socket.io.js"></script> <script type="text/javascript"> var socket = io(); </script> <script type="text/javascript" src="js/form.js"></script> server.js的内容如下 var express = […]

如何从两个不同的文件使用socket.io发送消息?

我正在与socket.io ,所以我创build服务器上的app.js和连接套接字到客户端,我看到emit('message')打印到客户端控制台,现在我想发送另一个消息从不同的文件consumer.js并向客户端发送消息,但在服务器端抛出exceptionio.on不是函数。 任何想法是什么在consumer.js文件中实现错误? app.js var express = require('express'); var app = express(); var consumer = require('./consumer'); var server = require('http').createServer(app); var io = require('socket.io')(server); app.use(express.static(__dirname + "/public")); io.on('connection', function(client) { console.log('Client connected…'); client.emit('message', ' hello from server'); }); server.listen(3000, function () { console.log('Example app listening on port 3000!'); consumer.start(); }); consumer.js var io = require('socket.io'); […]

RecordRTC将video上传到节点js服务器

我正在使用录制webrtc会议的RecordRTC。 实施录音后,当我testing这个应用程序,如果两个客户端在同一个系统,那么它的工作正常。 当我在不同的系统上testing这个应用程序时,它工作不正常,会议不logging。 这里是我停止录制客户端的代码。 recordRTC.stopRecording(function (videoURL) { console.log('recordRTC.stopRecording Function inside'); SelectedFile = recordRTC.getBlob(); $('#uploadForm').append('#attachmentFileId', recordRTC.getBlob()); StartUpload(); }); var FReader; var Name = "Meeting" + "_" + Date.now() + ".webm"; function StartUpload() { FReader = new FileReader(); FReader.onload = function (evnt) { socket.emit('Upload', { 'Name': Name, Data: evnt.target.result }); } socket.emit('Start', { 'Name': Name, 'Size': SelectedFile.size […]

如何使PHP和NodeJS通过套接字进行通信?

我正在使用(Node Js + Socket.io)向现有的PHP应用程序添加实时通知。 我创build客户端的一部分,现在我想通过套接字通知NodeJs服务器。 我发现其他的解决scheme,然后sockets: Sharing data via redis (hard to implement). DNode Library. 我最简单的方法是使用本机函数(节点服务器)和curl(PHP)的HTTP请求。 请问是否有任何例子开始?

如何使用socket.io-redis获取所有连接的套接字?

我有我的多个节点通过socket.io-redis运行,一切都工作正常,因为我从另一个事件发送到1服务器。 我想要在多个服务器上获得连接套接字的完整列表,因为我必须相应地操作它们的键,就像在简单的socket.io的io对象中一样,我得到一个包含所有套接字的hashmap。

Node.js套接字IO:如何持续保存套接字数据到MongoDB

我正在使用THREE.js在浏览器中构build3D游戏。 很多的乐趣,但我遇到了以下情况: 在我的3D场景中的一个对象不断地移动,由用户input驱动。 我需要实时将对象的位置保存到我的数据库。 我们从前端开始。 Angular.js使用内置的$watch函数来观察我的对象的位置。 对象的位置可以每秒更改多次 。 在每次更改时,我使用Socket IO向后端Node.js服务器发送事件,如下所示: socket.emit('update', { id: id, position: position }); 在后端 ,事件被捕获并立即发送到同一个Socket IO Room中的其他成员。 这样,这个房间里的每个人都可以获得最实时的更新。 现在,因为事件每秒可能发生多次 ,所以我不想在每次更改时更新我的MongoDB集合,因为这会导致很多开销。 相反,我正在寻找一种偶然将数据保存到数据库的方式。 我想出了一个解决scheme,使用Node.js的setInterval函数,每1000ms保存数据。 对于在后端接收的每个不同的id (每个对象都是唯一的),将在JavaScript对象上创build一个新的键,从而跟踪每个对象的变化。 后端的(简化)代码: let update_queue = new Object(); // … // Update Event socket.on('update', (msg) => { // Flag Changes if (!update_queue[msg.id]) update_queue[msg.id] = { changes: true }; // […]

摩卡testing中无法将socket.io-client连接到服务器

试图连接socket.io客户端到节点服务器我得到以下错误使用DEBUG = * mocha:runner run suite Chat Server Message Events +1ms Message Events socket.io-client:url parse http://localhost:5000 +1s socket.io-client ignoring socket cache for http://localhost:5000 +0ms socket.io-client:manager readyState closed +1ms socket.io-client:manager opening http://localhost:5000 +2ms engine.io-client:socket creating transport "websocket" +1ms engine.io-client:socket setting transport websocket +7ms socket.io-client:manager connect attempt will timeout after 20000 +1ms socket.io-client:manager readyState opening +1ms engine.io-client:socket […]

触摸移动事件不正确

我忙于创build一个小型的实时绘图应用程序,并试图创build一个触摸屏系统卡住了。 这是部分工作,但当我触摸和移动线连接到最后一行。 这是我的代码: document.addEventListener("DOMContentLoaded", function() { var mouse = { click: false, move: false, pos: {x:0, y:0}, pos_prev: false, colour: "blue" }; var canvas = document.getElementById('drawing'); var ctx = canvas.getContext('2d'); var width = window.innerWidth; var height = window.innerHeight; var socket = io.connect(); canvas.width = width; canvas.height = height; /* window.onresize= function(){ var width = window.innerWidth; […]

桌面通知使用socket.io图标不显示

我在我的项目中包含桌面通知。 随着通知一个图标应该显示。 我的代码似乎是正确的。但图标不显示在通知中。 如果我添加像“www.site.com/image/not.png”这样的完整URL,它可能会显示在Chrome中,而不是在Firefox中。 这是代码 var options = { body: 'Test Notification', icon: "not.png", dir : "ltr" }; 我怎样才能让图标在通知内正确显示?