代码之家  ›  专栏  ›  技术社区  ›  xMichal

在客户端javascript中创建TCP/IP套接字

  •  0
  • xMichal  · 技术社区  · 7 年前

    我像这样打开java套接字:

    插座=新插座(“127.0.0.1”,5015);

    let socket=new WebSocket(“ http://127.0.0.1:5015 ");

    未捕获的DomeException:未能构造“WebSocket”:

    我也试着用 但是服务器不想用这样的协议握手。

    2 回复  |  直到 7 年前
        1
  •  2
  •   Brad    7 年前

    不,您不能从任何浏览器中的网页建立任意TCP连接。

    Web套接字与TCP套接字有根本的不同。。。他们基本上没有关系。它们是HTTP之上的一个薄层,还有一个客户端API,它允许Web套接字客户端和支持Web套接字的服务器之间进行双向通信。

        2
  •  0
  •   KoboldMines    7 年前

    开始握手是为了与基于HTTP的协议兼容 服务器端软件和中介,使单个端口可以 客户端正在与服务器通信。为此,WebSocket客户端 握手是HTTP升级请求:

        GET /chat HTTP/1.1
        Host: server.example.com
        Upgrade: websocket
        Connection: Upgrade
        Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
        Origin: http://example.com
        Sec-WebSocket-Protocol: chat, superchat
        Sec-WebSocket-Version: 13
    

    https://tools.ietf.org/html/rfc6455

    WebSockets服务器必须能够处理HTTP请求!