zoukankan      html  css  js  c++  java
  • socket.ioclient

    socket.io-client的简单使用:

    文档地址:https://socket.io/docs/v4/client-initialization/

    安装:

    npm i socket.io-client

    使用:

    const io = require("socket.io-client");
    const socket = io("http://localhost:8888", {
      // reconnection: false, //关闭自动重连
    });
    console.log(socket.connected); // socket是否与服务器连接
    console.log(socket.disconnected); // socket是否与服务器断开连接
    socket.open(); // 手动重连
    // 连接成功
    socket.on("connect", () => {
      console.log(socket.id, '监听客户端连接成功-connect');
    })
    // 断开连接
    socket.on("disconnect", (reason) => {
      console.log(socket.connected);
      console.log("断开连接-disconnect", reason);
    })
    // 错误
    socket.on("error", (err) => {
      console.log("错误-error", err);
    })
    // 连接错误
    socket.on("connect_error", (err) => {
      err
      console.log("连接错误-connect_error");
    });
    // 连接超时
    socket.on("connect_timeout", (data) => {
      console.log("连接超时-connect_timeout", data);
    });
    // 重连成功
    socket.on("reconnect", (attemptNumber) => {
      // 重连尝试次数
      console.log("重连成功-reconnect", attemptNumber)
    });
    // 尝试重连时触发
    socket.on("reconnect_attempt", (attemptNumber) => {
      // 重连尝试次数
      console.log("尝试重连-reconnect_attempt", attemptNumber)
    });
    // 在尝试重新连接时触发
    socket.on("reconnecting", (attemptNumber) => {
      // 重连尝试次数
      console.log("正在尝试重连-reconnecting", attemptNumber)
    });
    // 重连尝试错误
    socket.on("reconnect_error", (err) => {
      err
      console.log(socket.connected);
      console.log("重连尝试错误-reconnect_error");
    });
    // 客户端不能重连时触发
    socket.on("reconnect_failed", () => {
      console.log("客户端不能连接-reconnect_failed")
    });
    // 当一个ping被发送到服务器时触发
    socket.on("ping", () => {
      console.log("一个ping发送到服务器-ping")
    });
    
    // 当服务器收到pong时触发
    socket.on("pong", (data) => {
      // data: 延迟多少ms
      console.log("服务器收到pong-pong", data);
    });

    可以配置是否自动重连等设置

    向服务端socket发送消息

    socket.emit("eventName", msg, handler)

    handler回调可以接受到服务端返回的结果

  • 相关阅读:
    docker 构建带健康检查的redis镜像
    HP服务器 开启ILO
    [转]如何取得当前正在执行的shell脚本的绝对路径?
    解决方案:centos运行shell脚本时报“$' ': 未找到命令”
    Js控制滚动条
    json_decode时含有中文是解码问题(json_decode返回为null)
    Phaser开源2d引擎 html5游戏框架中文简介
    js 开启video全屏模式
    修改mysql用户名密码 和 PHPmysqlAdmin对应密码修改
    用javascript判断一个html元素是否存在的五种方法:
  • 原文地址:https://www.cnblogs.com/fqh123/p/15733957.html
Copyright © 2011-2022 走看看