jjzjj

WebSocket

全部标签

javascript - websocket.js 导致 React 应用程序意外刷新

我有一个允许图片上传的React网络应用程序。在向我的API执行获取多个图像(在本例中为6个)的POST请求后,浏览器会自行刷新并重新加载当前页面。值得注意的是,此应用程序允许裁剪图像,因此对于用户上传的每张图像,都有第二张图像(裁剪后的)要上传。所以以上6张图片导致12个POST请求。刷新行为不一致且难以重现。我在发生此行为的函数中插入了断点。使用chrome调试器工具,我逐步完成了流程,发现刷新发生在这个调用之后。this.ws.onmessage=function(e){debug('messageevent',e.data);self.emit('message',e.data

javascript - websocket 问题 : cannot connect to node. js 服务器

我已经启动了一个node.js服务器并使用express运行,我正在尝试使用socket.io服务器端和chrome12客户端建立一个websocket连接。当我尝试连接时,socket.io输出一条调试消息说“破坏非socket.io升级”并且我的连接处理程序中的代码没有运行。同样在客户端,我的套接字的readyState是2(关闭)。[编辑]socket的readyState从0变为2 最佳答案 确保将socket.io.js文件插入客户端代码并使用它。如果您尝试在客户端创建自己的websocket,您可能会遇到问题。为你的服务

Javascript websocket 客户端将 cookie 添加到 header

我正在用javascript创建一个websocket升级请求,需要添加一个cookie来添加身份验证token,跨域限制是否可行?我的实现非常基础:document.cookie="token="+authToken+";domain=www.test.com;path=/";websocket=newWebSocket(endpoint); 最佳答案 您应该更改设置cookie值的方式。无法添加cookie的domain和path值,它们会自动添加。您应该只添加nameOfProperty和valueOfProperty。请参阅

javascript - 为什么我在 WebSocket 握手请求 header 中看不到 cookie 值?

我想从html页面发送一个websocket握手请求并编写如下代码:document.cookie="guestId=xxxx;remember=xxxxxx;";varws=newWebSocket("ws://localhost:5000/ws");但是ChromeDevTools中显示的内容似乎没有发送cookie:General:RequestURL:ws://localhost:5000/wsRequestMethod:GETStatusCode:307TemporaryRedirectResponseHeadersContent-Length:59Content-Type:

javascript - 在 ES Lint 中为 React Native 应用程序将 WebSocket 定义为全局变量

我收到以下eslint错误:42:21error'WebSocket'isnotdefinedno-undef您不能从react-native导入WebSocket,因为它是全局的,但是当我将WebSocket作为全局变量添加到我的.eslintrc.yml时,它不会改变结果错误:globals:WebSocket:true如何在ESLint中为ReactNative应用将WebSocket定义为全局?这可以修复吗?目前我的.eslintrc看起来像这样:env:browser:falsees6:truecommonjs:truenode:trueextends:'airbnb'par

javascript - 我将如何在 node.js 中唯一标识一台计算机?

简单的问题,我刚开始使用node.js,很好奇我应该如何唯一标识一台计算机? 最佳答案 与大多数操作一样,您无法唯一地标识一台计算机。所有数据都是无状态发送的,没有计算机的任何信息。但是您可以更改您的(x)html应用程序以存储唯一的cookie,以便客户端部分可以使用cookie向服务器进行身份验证,完美地识别一个用户的两个打开的选项卡。 关于javascript-我将如何在node.js中唯一标识一台计算机?,我们在StackOverflow上找到一个类似的问题:

javascript - Socket.io 从断开连接中恢复

我在Socket.io中与服务器和客户端聊天。客户端向服务器发送消息或从服务器接收消息。为了测试断开连接事件,我拔出以太网插头并在几秒钟后重新连接。之后,从客户端发送消息仍然正常,所有之前在断开连接期间发送的消息都在Chrome和Firefox上成功重新发送。然而,对于接收,Chrome是可以的,但对于不再从服务器接收消息的Firefox则不行。问题是我该怎么做才能正确处理此类网络问题并使我的聊天更稳定? 最佳答案 如文档中所述和您所说的,套接字应该正常重新连接。由于您可以发送消息,因此您似乎已重新连接到一半。有几个事件值得您添加以

javascript - 为什么使用 nginx 作为 websocket 代理?

所以我一直在阅读整个服务器设置,其中Nginx在nodejs前面用作反向代理,以便它提供静态内容,同时允许Node执行动态内容。我的问题是,为什么有人要使用nginx前端来反向代理到websocket?如果nginx提供静态内容(HTML、CSS、JS、媒体等),那么提供的JS文件不能直接使用ip地址和websocket在nodejs中监听的端口直接连接到服务器服务器?为什么要通过nginx去连接服务器上的websocket呢?还是我没有清楚地了解这种情况?谢谢! 最佳答案 WebSocket应用程序在客户端和服务器之间保持打开的长

javascript - 为什么类型化数组构造函数要求偏移量是基础类型大小的倍数?

这个问题在这里已经有了答案:WhyiscreatingaFloat32Arraywithanoffsetthatisn'tamultipleoftheelementsizenotallowed?(3个答案)StrangelimitationinArrayBufferViewconstructor[duplicate](1个回答)关闭9年前。在typedarrayspecification有一个构造函数允许采用现有的ArrayBuffer并将其视为另一种数组类型。有趣的是,offset参数必须是构造数组的基础类型的倍数。这种限制的原因是什么?对于背景-我正在尝试对二进制缓冲区进行编码以通

javascript - wss 上的 WebSocket 连接失败

我已经购买了证书并安装在我的node.js网站上。但是浏览器的https显示绿色并且可以。现在,我试图使用wss建立套接字连接,但失败了。Javascript客户端的错误是这样的。WebSocketconnectionto'wss://securedsitedotcom:3003/call'failed:WebSocketopeninghandshakewascanceled请帮忙!客户端代码(Javascript)varws=newWebSocket('wss://securedsitedotcom:3003/call');服务器端代码(node.js)https=require('