草庐IT

sockets - Laravel Forge 队列 worker

全部标签

javascript - 带有 Socket.IO 的 NodeJS 延迟发送数据

我使用的示例来自Socket.IO主页(http://socket.io/)。它可以正常工作,但在发送数据和另一端接收数据之间存在巨大的延迟。我正在使用XAMPP,我的目录中有socket.html,并在我的浏览器中使用“http://localhost/socket.html”导航到它,我让服务器监听端口8080。服务器:vario=require('socket.io').listen(8080);io.sockets.on('connection',function(socket){socket.emit('news',{hello:'world'});socket.on('my

javascript - 在 Socket.IO 和 WS 之间共享 WebSocket 连接

为了能够在利用Socket.IO的RPC功能的同时发送二进制数据,我认为我可以同时使用Socket.IO和WS同一台服务器上的模块。我想知道是否可以使用同一个HTTP服务器,而不是打开完全独立的服务器来建立两个连接。是否可以同时为Socket.IO和WS仅使用一个通过http.createServer()创建的服务器?明确地说,我希望从客户端创建Socket.IO连接和常规WebSocket连接。以下代码在客户端创建协议(protocol)错误,大概是因为Socket.IO和WS都在尝试处理连接。varhttp=require('http');varserver=http.create

javascript - Socket.io 检测断开连接原因

我正在使用socket.io,我可以从断开事件中检测断开原因吗?我可以在这样的日志文件中看到信息:传输端(启动)信息:传输结束(关闭超时)信息:传输结束(错误)我想知道原因(启动、关闭超时、错误)我会这样使用:socket.on('disconnect',function(){console.log('User1disconnectedbecause'+reason);});我能知道原因吗?编辑:我找到了解决方案socket.on('disconnect',function(reason){console.log('User1disconnectedbecause'+reason);}

javascript - 如何检测 socket.io 传输何时发生变化? (事件或某事)

我正在尝试使用socket.io客户端连接到服务器io.js+socket.io。它从xhr轮询请求开始,连接事件甚至第一条消息都通过xhr接收,然后升级到websocket。我如何检测传输的切换何时恰好记录它(在两侧)?简化的服务器代码:io.on("connection",function(socket){console.log("transport",socket.conn.transport.name);//willprint"polling"socket.on("join",function(data){console.log("transport",socket.conn.

javascript - 等待几个 web worker 完成

我有一个创建多个网络worker的脚本,这些网络worker执行一些工作并在完成时发送消息。问题是我需要从所有这些中得到结果,然后计算出最终的解决方案。在其他工作中,他们计算出问题的部分解决方案,主线程使用这些部分解决方案来生成最终答案。我如何才能等待所有这些线程完成,Javascript中是否有类似Java中的invokeAll的东西?或多或少,我的主线程中有:vardata=[];functioncreateWorker(i){varv=newWorker('js/worker.js');v.postMessage(i);v.onmessage=function(event){da

javascript - 打开 Chrome 扩展程序时出现 Service Worker TypeError

当我打开WAVE(Web可访问性评估工具)扩展程序时,我的服务人员在Chrome中抛出此错误:Uncaught(inpromise)TypeError:Requestscheme'chrome-extension'isunsupportedatsw.js:52(anonymous)@sw.js:52Promise.then(async)(anonymous)@sw.js:50Promise.then(async)(anonymous)@sw.js:45Promise.then(async)(anonymous)@sw.js:38我的服务worker代码是:(function(){'us

javascript - 如何将 Websockets 与 Pyramid 和 socket.io 一起使用?

我正在尝试使用Pyramid和socket.io框架创建一个简单的WebSocket应用程序。服务器端代码:frompyramid.responseimportResponsefrompyramid_socketio.ioimportSocketIOContext,socketio_manageimportgeventdefincludeme(config):'''Thismethodiscalledontheapplicationstartup.'''config.add_route('socket.io','socket.io/*remaining')classConnectIOC

javascript - 获取用户id socket.io, passport, koa

我正在使用Koa、Passport.js和koa-session对用户进行身份验证。所以它基本上看起来像://sessionvarsession=require('koa-session');app.keys=[config.secret];app.use(session());//authrequire(__dirname+'/lib/auth');//de/serializeUser,strategiesetc..varpassport=require('koa-passport');app.use(passport.initialize());app.use(passport.s

javascript - 如何通过 worker.onerror 在 promise 中冒泡网络 worker 错误?

我正在处理一个需要在发生错误时进行报告的网络worker。通常,我可以使用worker.onerror来监听从worker抛出的任何错误。但是,当错误发生在webworker的promise中时,我无法弄清楚如何将错误冒泡回worker.onerror。请原谅奇怪的代码片段,因为这似乎是展示工作人员行为的唯一方法。(worker在HTML部分中定义)。functiongetInlineJS(){varjs=document.querySelector('[type="javascript/worker"]').textContent;varblob=newBlob([js],{"typ

javascript - 仅在 Chrome 中(服务 worker ): '... a redirected response was used for a request whose redirect mode is not "follow"'

当我在Chrome中刷新(或离线)时,我得到“无法访问此站点”并且以下内容记录到控制台:TheFetchEventfor"http://localhost:8111/survey/174/deployment/193/answer/offline/attendee/240/”导致网络错误响应:重定向响应用于重定向模式不是“跟随”的请求。。当我在Firefox中刷新时,一切正常。有人可以解释为什么会这样吗?这是我简化的软件。importScripts("/static/js/libs/idb.js")varCACHE_NAME="upshot-cache-version3"varurls