Articles of sockets

与http服务器,websocket和快递的体系结构

我正在尝试使用NodeJs“http-server”,“express”和“web socket”来创build一个网站。 基本上,“http-server”是监听端口“8080”,在“index.html”页面上,我有一个简单的表单来执行login。 这就是我有点卡住了。 其实,我读了这篇文章( https://auth0.com/blog/2014/01/15/auth-with-socket-io ),我试图重现身份validation过程。 所以我试图创build“快速”应用程序来处理“/login”路线,但是,我有一个端口问题。 我无法听到“http-server”使用的端口“8080”,我不能听到另一个端口,因为如果我这样做,我的AJAX调用“/ login”路由将被阻止由CORS系统。 我的目标很简单:我想有一个web服务器提供html / css和javascript文件(这是一个普通的web服务器),但我也想用一个“NodeJs”模块来使用“express”来处理login和websocket其余的沟通。 我看到有可能在同一个端口上使用“ws”和“express”,但我不知道如何通过网站启用AJAXloginfunction。

在Laravel中使用Socket.io和Redis广播事件5.3

我试图用L5.3创build一个简单的事件广播选项,使用socket.io和Redis。 这些东西在服务器端工作正常,但不能在客户端工作。 这是我的代码。 事件代码 public $data; public function __construct($data) { // $this->data = $data; } /** * Get the channels the event should broadcast on. * * @return Channel|array */ public function broadcastOn() { return new PrivateChannel('test-channel'); } Socket.js var app = require('express')(); var http = require('http').Server(app); var io = require('socket.io')(http); var Redis = require('ioredis'); […]

Node.js OSC模块发送TCP

我正在使用OSC模块https://github.com/colinbdclark/osc.js,但我正在努力使其通过TCP工作。 我无法find任何使用TCP的例子,它们都是基于UDP的。 我曾尝试在node.js中创build一个TCP客户端,但仍然很难将正确编码的消息转换为OSC格式。 我也相信它也必须用SLIP编码? 我很新,所以要温柔。 如果有人能指点我正确的方向,或者提供一个关于通过node.js中的TCP发送OSC消息的例子,那将是惊人的 谢谢! Wayde PS。 很高兴使用osc-min模块。 据我所知,你可以编码消息到osc消息并存储在一个变种。 但仍然无法让它通过TCP工作..工作正常UDP,但我的答复是大于UDP可以处理,如果这是有道理的

在express js的不同文件中访问db连接的同一个实例

我有4个文件: 1) db.js – mongodb connection 2) socket.js – for all socket events 3) route.js – route for / 4) app.js – main start point for express app 我想从db.js in socket.js and route.js共享相同的数据库实例,以便连接到数据库只有一次。 我已经尝试了2种方法: 1) require db.js in both files, but this creates new connection every time require is called. 2) pass the collections in […]

为什么我的socket.io应用程序在Raspberry Pi上运行时立即断开?

我正在尝试在可以与远程socket.io服务器通信的树莓派上构build一个node.js应用程序。 当build立一个新的连接并closures一个现有的连接时,socket.io服务器很简单地写入控制台。 在浏览器中运行时,socket.io客户端按预期工作。 但是,当我从Raspberry Pi运行客户端代码时,它将连接并立即终止。 这不允许我执行任何function,如发射或接收。 连接事件永远不会被解雇。 var io = require('/usr/local/lib/node_modules/socket.io-client'); var serverUrl = 'http://remoteserver.com'; console.log('Connecting to ' + serverUrl); var socket = io.connect(serverUrl); socket.on('connect', function(socket) { console.log('Connection established!'); console.log(socket.id); socket.on('disconnect', function() { console.log('Disconnected from server'); }); }); 上面的代码将输出: Connecting to: http://remoteserver.com 在服务器端,输出将显示一个新的连接,并最终超时closures。 为什么客户端连接事件不会触发? 我怎么能坚持这个连接,以便我最终可以发送input到服务器?

将node.js服务器应用到Web服务器

我正在学习如何使用Node.js和Web套接字来创build简单的多用户交互式JavaScript程序。 我使用Daniel Shiffman的这个系列教程来创build这个示例项目。 我的下一步是使用WinSCP将其上传到我的RaspberryPi apache2 Web服务器,但是我还没有find一种方法来编辑代码,以便使其工作,而且我不知道该用什么要执行的程序才能正常工作。 任何援助将是伟大的。 我的Node / Socket.io知识的程度完全来自上面提到的video系列,所以你可以假设我几乎不知道其他东西。

Webrtc,ICE失败

video通话在同一个networking中正常工作。 问题是在其他networking上调用计算机时,远程video不显示。 在铬我没有得到任何错误的控制台,但在Firefox的控制台我得到“ICE失败” 。 我使用Node JS来实现信令服务器和Google STUN服务器。 以下是正在使用的事件序列: 用户A: 创build对等连接 (包括getusermedia,addstream) 寄存在Icecandidate处理程序上 发出一个套接字事件来通知用户B该呼叫并等待响应 从用户B接收提供并创build答案 。 用户B: 接收套接字事件并创build对等连接 (包括getusermedia,addstream) 注册onicecandidate处理程序 还注册“Onnegogiationneeded”处理程序。 用户A没有这个处理程序。 它被删除,以便用户B有足够的时间来创build对等连接 , 候选处理程序,然后创build一个提议 当Onnegogiation被触发时,一个报价被创build并被发送给用户A. 注意: 1.创buildOffer之前,在两边创buildpeerconnection和onicecandidate处理程序。 2.这样做是为了确保在创build报价之前,双方都能准备好Onicecandiate处理程序,并且不会错过ICE候选人 。 上述一系列事件是否有问题?

为同一个项目混合编程语言

混合编程语言是一个坏主意,例如有一个node.js服务器,它将一些东西发送到一个python程序,然后去执行其他的东西。 这是非常模糊的,但在不同的程序之间发送数据的最佳方式是什么,或者这只是一个可怕的想法,我不应该考虑它? sockets?

通过Socketstream式传输一系列JSONstring

这可能更多的是关于套接字/ TCP的行为,比node.js。 我在node.js中编写了一个服务器,它通过套接字(而不是HTTP)接收一系列的JSON对象。 客户端(iOS应用程序)通过此套接字stream式传输JSONstring。 每个JSONstring的大小都不相同(从几个字节到几个K字节),因此计时。 每个JSONstring都将用一个“写入”操作发送。 当我从套接字接收数据时,我调用JSON.parse()。 简单的testing案例很好,但我不确定这是否足够。 我想知道是否需要担心以下情况:(1)'data'包含多个JSON对象(2)单个JSON对象通过多个数据发送。

通过服务器将video从一个客户端传输到另一个客户端

我试图从一台笔记本电脑发送videostream到另一台笔记本电脑,并通过服务器路由。 让我们叫他们笔记本电脑A发送videostream到笔记本电脑B. 在笔记本电脑A上,我没有特别要求如何收集videostream,但是我想有一些NodeJS服务器正在运行,打开一个networking套接字到服务器以发回videostream。 在笔记本电脑B上,我想用html5video标签在浏览器中渲染video。 有没有人有任何build议如何可以在技术上做到这一点? 我不太了解的差距是:*如何从膝上型电脑A发送一个stream到一个服务器(也可以运行NodeJS)*如何提供一个videostream,可以插入笔记本电脑B上的video标签 谢谢!