草庐IT

Websockets

全部标签

javascript - websockets的缺点

我想知道使用websockets有什么样的限制。Websockets是如此……强大。我无法想象它没有缺点。说,可以同时连接到服务器的用户数量是多少(如果我正在创建游戏并且用户将通过WebSockets连接到游戏,什么会限制可以同时连接的用户数量?)此外,每增加一个连接,连接质量(速度和类似的东西)都会降低吗? 最佳答案 优点和缺点当然取决于具体的用例,但我会尝试指出WebSocket和HTTP之间的一些区别。WebSocket比HTTP更复杂。您可以与telnet客户端建立HTTP连接,但您可能无法与WS建立相同的连接。即使您忽略了

javascript - WebRTC 和 Websockets。有区别吗

我假设WebRTC是一个解码/编码音频和视频的API,尽管服务器和客户端之间的通信是通过网络套接字或其他网络协议(protocol)完成的?我有点困惑。WebRTC有自己的通信协议(protocol)吗? 最佳答案 WebRTC有两个方面。允许应用访问摄像头和麦克风硬件的JavaScriptAPI(getUserMedia)。您可以使用此访问权限简单地在本地显示流(可能是applyingeffects),或通过网络发送流。您可以将数据发送到您的服务器,或者您可以使用...PeerConnection,一种允许浏览器建立直接点对点套接

javascript - 获取 websockets 使用关闭代码 1006 关闭的原因

我想知道websockets关闭的原因,这样我就可以向用户显示正确的消息。我有sok.onerror=function(evt){//sincethereisanerror,socketswillcloseso...sok.onclose=function(e){console.log("WebSocketError:",e);}代码始终为1006,原因始终为""。但我想区分不同的关闭原因。例如,命令行给出错误原因:“你不能删除它,因为数据库不允许你”。但在Chrome的控制台上,原因仍然是“”。还有其他方法可以区分不同的关闭原因吗? 最佳答案

带有 UDP 的 JavaScript WebSockets?

我正在编写一个必须从其他用户接收大量数据的JavaScript应用程序。这些数据是否丢失并不重要。有没有什么方法可以通过UDP而不是TCP使用JavaScriptWebSockets? 最佳答案 听起来您正在等待的是WebRTC它正在通过标准流程工作。正如其他人所指出的那样,WebSockets是通过HTTP升级启动的结果在TCP上运行。 关于带有UDP的JavaScriptWebSockets?,我们在StackOverflow上找到一个类似的问题: htt

javascript - 使用 JavaScript 通过 websockets 进行视频流传输

使用JavaScript流式传输实时视频的最快方法是什么?基于TCP的WebSockets是否是一种足够快的协议(protocol)来传输30fps的视频? 最佳答案 IsWebSocketsoverTCPafastenoughprotocoltostreamavideoof,say,30fps?是的..是的,看看这个project.Websockets可以轻松处理高清视频流。但是,您应该选择自适应流。我解释here你如何实现它。目前我们正在开发一个基于网络的即时消息应用程序,支持聊天、文件共享和视频/网络摄像头。通过一些技巧和技巧

javascript - 我对 HTTP 轮询、长轮询、HTTP 流和 WebSockets 的理解

我在SO和网络上阅读了很多关于问题标题中关键字的帖子,并从中学到了很多东西。我读到的一些问题与具体的实现挑战有关,而另一些则侧重于一般概念。我只是想确保我理解所有的概念以及技术X优于技术Y等的原因。所以这里是:Http轮询:基本上是AJAX,使用XmlHttpRequest。HttpLongPolling:AJAX但服务器会保留响应,除非服务器有更新,一旦服务器有更新,它就会发送它,然后客户端可以发送另一个请求.缺点是需要来回发送额外的header数据,从而导致额外的开销。HttpStreaming:类似于长轮询,但服务器以“TransferEncoding:chunked”heade

Websockets 读/写

去/websockets菜鸟这里。我修改了thisworkingexample以这样的方式,而不是io.Copy(ws,ws)我在做msg:=[]byte{}_,err:=ws.Read(msg)_,err=ws.Write(msg)(为简洁省略打印错误)对我来说它看起来一样,但它不起作用。它不读取任何内容(尽管也不返回错误)。在客户端(Chrome/FF),我在尝试发送第二条消息时收到“WebSocket已经处于关闭或关闭状态”。一般来说,golang中ws的readmsg->dosomething->writemsg的方法是什么? 最佳答案

javascript - 内部网络上的 Websockets 地址需要静态 ip?

我正在使用Gorilla/websocket运行围棋网络服务器,用于实时国际象棋/聊天应用程序。据我所知,我在两个位置定义了address和port,Gohttp.ListenAndServer()方法和Javascript新的Websocket();函数。这在同一台主机上的跨浏览器上工作得很好,但是当试图通过我的内部网络扩展功能时它会变得棘手。所以我使用,例如:开始:PORT:="0.0.0.0:8080"//...http.HandleFunc("/ws",func(whttp.ResponseWriter,r*http.Request){h.serveWs(hub,w,r)//h

google-app-engine - 您可以将 App Engine 套接字包用于 websockets 吗?

我想弄清楚是否有一种方法可以在GoogleAppEngine的Go运行时(在标准环境中)支持websockets。其他线程中的人指出了sockets包,但我看不出你如何将它用于websocket。我错过了什么吗? 最佳答案 在标准环境中运行的应用程序可以使用gorilla/websocket打包为客户端。设置Dialer.NetDial函数到func(network,addrstring)(net.Conn,error){returnsocket.Dial(ctx,network,addr)}其中socket是appengine套接

websocket - 使用 Golang 跨源 websockets

我正在开发一个相对简单的PhoneGap应用程序(iOS),它需要向Go服务器发出跨源websocket请求。我已经设置了$.support.cors=true;$.mobile.allowCrossDomainPages=true;在任何网络事件之前在我的应用程序中。服务器提供一个简单的HTML/JavaScript页面用于测试/诊断目的,一切都很好-websocket连接工作,服务器提供正确的数据,这一切都很棒。在iOS模拟器上运行的PhoneGapplication不是这种情况。在模拟器中,Safari实际上可以到达我的测试/诊断页面。但是,PhoneGapplication超时