Tag: sockets

Yii2使用yii2-nod-socket将事件从php发送到客户端

我使用yii2-node-socket将事件发送到具体房间中的客户端。 我遵循所有步骤来安装在我的项目扩展,服务器已成功启动,客户端连接到套接字,但是当我试图从PHP代码发送事件客户端没有收到任何数据。 Javascript代码: var socket = new YiiNodeSocket(); socket.onConnect(function () { socket.room('testRoom').join(function (success, numberOfRoomSubscribers) { // success – boolean, numberOfRoomSubscribers – number of room members // if error occurred then success = false, and numberOfRoomSubscribers – contains error message if (success) { console.log(numberOfRoomSubscribers + ' clients in room: testRoom'); // do something // bind events […]

ERR_SSL_PROTOCOL_ERROR – Socket.io和Node.js

我正在使用Node.js服务器并使用Socket.io来pipe理Socket的连接,但是我遇到了SSL证书的问题。 很多用户可以正常访问Node.js服务器,但是其他用户不能访问并且收到这个错误: 当我设置我的服务器时,我有这个SSL选项: var privateKey = fs.readFileSync('/root/cert/key.key', 'utf8').toString(); var certificate = fs.readFileSync('/root/cert/cert.crt', 'utf8').toString(); var ca = fs.readFileSync('/root/cert/ca.crt').toString(); var credentials = { key: privateKey, cert: certificate, ca: ca }; var app = express(); var httpsServer = https.createServer(credentials, app); var io = require('socket.io')(httpsServer); 有人知道如何解决这个错误? 问题是只有一些用户收到此错误。

将Unity游戏连接到数字海洋Node.js服务器

开始按照我的统一游戏的networking教程(以前没做过)。 这是迄今为止创build的一些非常简单的脚本,可以连接到。 这是我有: var io = require("socket.io")(process.env.port || 3000); console.log("Server Started"); io.on("connection", function (socket) { console.log("Client Connected"); }); 在Unity中,我有一个带有Socket IO Component(来自商店资产)的gameobject。 从CMD,我运行本地版本的server.js(上面的代码),并看到“服务器启动”出现。 在Unity中,GameObject的URL设置为:ws://127.0.0.1:3000 / socket.io /?EIO = 4&transport = websocket,当我玩Unity的时候,它连接起来。 这是显示在“客户端连接”出现在CMD窗口中。 本教程没有涉及到如何部署这样的东西,所以我只是确保在继续之前它肯定会工作。 我用Node.js打开了一个数字海洋液滴。 我导航到srv / www,并安装express以及socket.io,就像我在本地做的那样。 我上传(通过FTP)server.js的位置,并运行它。 我看到“服务器启动”出现。 当我统一更改URL中的IP地址时,维护端口及其后的所有内容,然后按播放,它不会出现连接。 我从来没有看到任何“客户端连接”消息。 这感觉就像是最后的障碍,但我无法解决它。 我把东西放在错误的目录中吗? 我在做什么错,为什么不能连接?

用于浏览器和Flash的Node.js和套接字

做一个项目,将来自智能手机的设备定位数据传送到套接字服务器,然后从那里传送到一个Flash应用程序。 现在用nodejs创build一个http服务器并不难,通过浏览器从智能手机连接并通过socket.io传输数据的工作正常。 问题出在闪存,我无法设法连接我的闪存应用程序的HTTP服务器运行socket.io。 我想通过运行一个节点tcp服务器连接从闪存没有问题,但我没有更多的会议pipe理,我不能从浏览器连接了。 我会很高兴有一些想法/build议,真的被困在这里。 谢谢

有时出现乱码的结果通过TCP套接字从python发送base64编码图像到node.js

我试图通过程序在python中生成图像以发送到node.js实例,然后我可以通过websocket实时将这些图像发送到浏览器。 我的第一个testing迭代只是在我的node.js服务器中打开一个jpeg文件,将其编码为base64,并使用socket.io(端口81)将其发送到浏览器。 每次发送数据都能正常工作。 然后,我尝试在python中打开相同的文件,连接到一个原始的TCP node.js服务器(在端口9090上),并将文件发送到节点服务器,以便转发给浏览器(在端口81上)。 大约一半的时间,数据节点接收似乎被破坏,但数据python从文件读取每次都罚款。 令我惊讶的是,节点和浏览器之间的数据通道是好的,但是Python和节点之间的数据通道却不是。 websockets是否提供了一些在原始TCP套接字中不存在的纠错? 如果不是,可能会导致这个错误? 谢谢。 JS代码 var io = require('socket.io').listen(81); var fs = require('fs'); var path = require('path'); var net = require('net'); var mousex = 0; var mousey = 0; var imgdata = ""; var oldimgdata = ""; var imagehaschanged = true; //Serving python var server = net.createServer(function (stream) { […]

有一些进展。发送电话不要到nodejs土地

我已经做了一个使用AsyncProgressWorker线程处理我的套接字消息的Node插件。 这是我的代码: class ProgressWorker : public AsyncProgressWorker { public: ProgressWorker( Callback *callback , Callback *progress) : AsyncProgressWorker(callback), progress(progress) {} ~ProgressWorker() {} void Execute (const AsyncProgressWorker::ExecutionProgress& progress) { char response[4096]; int result; int connected = 1; int timeout = 0; int pending = 0; while(connected) { result = sctp_recvmsg(sock, (void *)&response, (size_t)sizeof(response), NULL, 0, 0, 0); […]

在另一个JavaScript文件中加载JavaScript文件

我使用node.js和socket.io并做一个服务器/客户端的事情。 在我的服务器,是因为它不在一个网页上,有没有办法我可以加载最新的文件(或最新的jQuery?),所以我可以在我的服务器js文件中使用jQueryfunction。 谢谢

nodejs错误:parsingSocket.ondata错误

使用http.request发出客户端请求(node v0.6.18,v0.6.3)时,出现了一些错误,下面的代码会产生错误,并且我有一些问题。 var http = require('http'); var url = require('url'); http.createServer(function(req, res) { var data = '多情自古空余恨'; res.writeHead(200, { 'Content-Type': 'text/plain', 'Content-Length': 1 //ERROR }); res.end(data); }).listen(3000); function request(options, callback) { var req = http.request(options, function(res) { var data = ''; res.setEncoding = 'utf8'; res.on('data', function(chunk) { data += chunk; }); res.on('error', function(err) { callback(new […]

在node.js上的socket.io上发送消息client-> server-> client

我正在使用NodeJS + Socket.IO进行简单的网页游戏。 有用。 为什么? 这是我的server.js var app = require('express').createServer(); var io = require('socket.io').listen(app); io.sockets.on('connection', function (socket) { socket.on('set nickname' , function (nickname) { socket.nickname = nickname; console.log(nickname + ' just connected!'); }); socket.on('msg' , function (msg) { socket.msg = msg; io.sockets.emit('response', msg); }); socket.on('updatePlayer' , function (updatePlayer) { console.log("Someone just moved on the map!"); […]

CORS用node.js和socket.io阻塞

我最近开始学习node.js和socket.io。 我跟着一个简单的教程,socket.io有,而且在我的电脑上运行,一切正常。 但是,我决定将客户端部分上传到服务器进行testing,这就是问题出现的地方。 我想在Web主机上运行聊天客户端,然后在我的计算机或其他主机上运行服务器。 基本上,我计划端口转发服务器,并让客户端运行在网页上。 我打开我的端口端口转发,似乎工作,但我每次都在网页上的错误。 Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://24.151.51.34:3000/socket.io/?EIO=3&transport=polling&t=1437399007343-0. (Reason: CORS request failed). 我一直在搞乱代码,希望能够在开始自己的项目之前find解决这个问题的办法,但是我找不到一个办法。 客户端代码是: <!doctype html> <html> <head> <title>Socket.IO chat</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; } body { font: 13px Helvetica, Arial; } form { background: #000; padding: 3px; […]