Articles of websocket

React w / SignalR – TypeError:WebSocketClient()不是一个构造函数

React开发新function 我正在为BitTrex Exchange API构build一个API客户端,使用它们的node.js包装器: node.bittrex.api 为了在ReactJS框架中简单地testing订单更新的websocket订阅,下面是我采取的步骤: – 使用创build反应 – 应用程序来创build应用程序。 -used npm安装node.bittrex.api – 将bittrex客户端对象添加到默认App.js组件的顶部,并使用适当的API密钥configuration选项 – 添加一个button(与处理程序绑定到buttonReact文档)到默认的App.js主要组件, 在处理函数中,根据node.bittrex.api文档中的示例代码启动websocket订阅。 该应用程序出现了,但是当我按下button,我得到一个错误,说TypeError Websocketclient()不是一个构造函数,在创buildwebsocket连接的SignalR.js中的行: 现在我怀疑只有一些与React框架有关的东西正在搞砸了。 任何人都可以帮助我理解错综复杂的东西吗? 谢谢。 这是我的App.js: import React, { Component } from 'react'; import logo from './logo.svg'; import './App.css'; var bittrex = require('../node_modules/node.bittrex.api/node.bittrex.api.js'); bittrex.options({ 'apikey' : process.env.REACT_APP_BTREX_API_KEY, 'apisecret' : process.env.REACT_APP_BTREX_SECRET_KEY, 'verbose' : true, 'cleartext' : false, 'baseUrl' : […]

“需要升级”(ws包)带有节点的WebSockets

我想简单地使用与Node js的WebSockets。 我告诉你我的代码: 的index.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>WebSockets</title> </head> <body> <script type="text/javascript"> const WebSocket = require('ws'); var sock = new WebSocket("ws://localhost:5001",{perMessageDeflate:false}); sock.onopen = function(event){ alert('Socket connected successfully'); setTimeout(function(){ sock.send("Hey !"); },1000); }; sock.onmessage = function(event){ console.log(event); }; </script> </body> </html> index.js var server = require('ws').Server; var s = new server({ port:5001}); 我安装了包“ws”来使用WebSockets。 […]

netlify:WebSocket连接失败:连接在收到握手响应之前closures

我在Netlify上的应用程序,我得到一些错误:服务器不工作:9aeacd2 … .js:1 WebSocket连接到'wss:// xxxxxxxxxxxxx /:5000'失败:连接在收到握手响应之前closures。 只有开始站点服务。 本地所有作品完美,我没有得到任何错误。 应用程序build立在Netlify(gulp)上,这是有angular度的应用程序。 帮助我,谢谢! 我的服务器代码: "use strict"; process.title = 'node-chat'; var webSocketsServerPort = (process.env.PORT || 5000); var webSocketServer = require('websocket').server; var http = require('http'); var pref = '../'; var fs = require('fs'); var index = fs.readFileSync('src/index.html'); var clients = []; var loggedUsers = []; var tables = []; var […]

如何确保socket.io服务器接收到socket.io-client消息?

有没有办法确保socket.io服务器接收到socket.io-client消息? 我在这里看到socket.io中有一个确认机制。 如果没有收到确认(这里是否有任何标准模式),或者如果在规定的时间内没有收到确认,socket.io-client会重试发送消息,我们可以再次重试发送消息吗? 我的应用程序通过2g蜂窝networking使用socket.io-client。 消息到达服务器的时间有98%没有任何问题。 另外2%的信息由于蜂窝networking的问题而丢失。 它会声称有一个套接字连接,数据将被传输,但服务器端永远不会得到它。 我想知道是否有一个确定的消防方式,以确保客户端消息已经到服务器。 我的每个客户都已经有一个ID,但不能假设消息到达那里。 有没有人有一个如何重新发送相同的消息,如果没有在一定的时间范围内确认的例子。 我甚至不在乎是否再次发送同样的消息,这是不可取的,但对我来说并不重要。

Unity WebGL WebSocket消息头

我已经制作了多人游戏系统。 它工作正常。 但我想改变消息头(或 – 标签,开销等),以减less传输的数据。 Node.JS服务器端有'message'标记 wss.on('message',function incoming(message)){ … … } 但在统一方面,我不能很好的方法或variables。 w = new WebSocket (new Uri (url)); yield return StartCoroutine (w.Connect()); w.SendString ("some_data"); 我如何设置消息标签 我知道socket.io可以做到这一点,但我不想有机会代码。

dockerWebsocket缩放

什么是使用jetty websocket服务器打开的任何一个websocket的最大数量。 我最近试图加载testing一样,并能够在一个8核心的Linux虚拟机作为服务器和16个客户端,每个4核心打开20万并发连接。 每个客户端都能够创build12500个并发连接,他们开始得到套接字超时exception。 此外,我已经调整了打开文件的数量以及客户端和服务器的TCP连接设置,如下所示。 sudo sysctl -w net.core.rmem_max=16777216 sudo sysctl -w net.core.wmem_max=16777216 sudo sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216" sudo sysctl -w net.ipv4.tcp_wmem="4096 16384 16777216" sudo sysctl -w net.core.somaxconn=8192 sudo sysctl -w net.core.netdev_max_backlog=16384 sudo sysctl -w net.ipv4.tcp_max_syn_backlog=8192 sudo sysctl -w net.ipv4.tcp_syncookies=1 sudo sysctl -w net.ipv4.ip_local_port_range="1024 65535" sudo sysctl -w net.ipv4.tcp_tw_recycle=1 sudo sysctl -w net.ipv4.tcp_congestion_control=cubic 相反,一个2核心机器运行节点能够扩展到90k连接。 […]

PHP + MySQL + Socket.io – 实时在线状态的朋友

我使用PHP / MySQL和node.js(socket.io)创build了一个类似于facebook的实时聊天应用程序,但是我现在面临以下问题。 脚本 login的用户有一个类似Facebook的朋友列表,当他的任何朋友离开,离线,在线等我想他的朋友列表实时更新,而无需重新加载整个朋友列表,例如ajax轮询每x秒。 login用户在网站上进行的每一个操作 ,比如页面的变化,新的聊天窗口,search,或者我有一个名为last_active ,用当前的unix_timestamp进行更新。 这是为了跟踪用户在线或离开。 如果时间戳大于300秒,则用户离开。 每三十秒钟一次 ,数据库last_online用户login的unix_timestamp更新last_online列。 这是为了跟踪用户在线。 如果时间戳大于35秒,我们可以认为他已经closures了窗口,将被视为离线,而不是离开。 用户也可以手动设置他的在线状态为繁忙,不可见等,并且这被设置为login用户的列的custom_status 。 上面的一切工作,因为它应该提供,用户总是重新加载页面,看看他的朋友有什么在线状态,但我希望这是实时更新,而不是当重新加载整个页面或使用Ajax轮询来重新加载整个朋友列表。 我正在考虑在客户端比较当前的在线状态,当发生变化的时候发送到socket.io。 然后,我遍历所有连接的客户端,并向所有连接的朋友发出用户新的在线状态。 但是,我想这将有性能问题,当说例如1000个用户连接? 你将如何处理?

Three.js场景stringify失败

将three.js编辑器场景对象string化失败,出现Range错误 – 无效的string长度。 所以我们尝试获取场景对象的键,并将它们分别串化,并尝试使用WebSockets将其发送到服务器,但是失败,最大有效载荷大小超出了错误。将这个巨大场景对象发送到服务器的任何帮助将不胜感激

button单击dynamic创buildWebSocket

我正在为客户端创build一个SPA,在用户点击“login”button后,我想创build一个新的WebSocket。 我遇到的问题是,我只能得到正确的创buildWebSocket,如果它是在初始页面加载完成的。 例如,下面的代码可以正确地创buildWebsocket: <script src="socket.io.js"></script> <script> var pass; var socket = {}; socket = io('https://my.server.here', { query: "pass=mypasswordhere" }); socket.on('error', function(err){ console.log('Connection Failed: ' + err); }); socket.on('chat message', function (data) { console.log('data: ' + data); socket.emit('my other event', { my: 'data' }); }); </script> 但是,当我尝试创buildWebSocket作为单击事件的结果,它不会被创build: <html> <head> <script src="socket.io.js"></script> <script> var pass; var socket […]

在socket io客户端Android中打开握手响应是空的

我为Android实现nv-websocket-client 。 我在Log中遇到了一个错误。 如何成功连接? com.neovisionaries.ws.client.WebSocketException: The status line of the opening handshake response is empty. 09-18 15:37:59.532 14225-14248/info.androidhive.firebasenotifications W/System.err: at com.neovisionaries.ws.client.HandshakeReader.readStatusLine(HandshakeReader.java:99) 09-18 15:37:59.532 14225-14248/info.androidhive.firebasenotifications W/System.err: at com.neovisionaries.ws.client.HandshakeReader.readHandshake(HandshakeReader.java:48) 09-18 15:37:59.532 14225-14248/info.androidhive.firebasenotifications W/System.err: at com.neovisionaries.ws.client.WebSocket.readHandshake(WebSocket.java:3244) 09-18 15:37:59.532 14225-14248/info.androidhive.firebasenotifications W/System.err: at com.neovisionaries.ws.client.WebSocket.shakeHands(WebSocket.java:3123) 09-18 15:37:59.532 14225-14248/info.androidhive.firebasenotifications W/System.err: at com.neovisionaries.ws.client.WebSocket.connect(WebSocket.java:2155) 我的服务器端代码在Socket.js中。 有什么我失踪? var app = require('express')(); var http = require('http').Server(app); […]