iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >node.js中ws模块如何创建服务端和客户端
  • 341
分享到

node.js中ws模块如何创建服务端和客户端

2024-04-02 19:04:59 341人浏览 泡泡鱼
摘要

小编给大家分享一下node.js中ws模块如何创建服务端和客户端,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!首先下载webso

小编给大家分享一下node.js中ws模块如何创建服务端和客户端,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

首先下载websocket模块,命令行输入

npm install ws

1.node.js中ws模块创建服务端

// 加载nodewebsocket模块 ws;
var ws = require("ws");
// 启动基于WEBSocket服务器,监听我们的客户端接入进来。
var server = new ws.Server({
 host: "127.0.0.1",
 port: 6080,
});
// 监听接入进来的客户端事件
function websocket_add_listener(client_sock) {
 // close事件
 client_sock.on("close", function() {
 console.log("client close");
 });
 // error事件
 client_sock.on("error", function(err) {
 console.log("client error", err);
 });
 // end 
 // message 事件, data已经是根据websocket协议解码开来的原始数据;
 // websocket底层有数据包的封包协议,所以,绝对不会出现粘包的情况。
 // 每解一个数据包,就会触发一个message事件;
 // 不会出现粘包的情况,send一次,就会把send的数据独立封包。
 // 如果我们是直接基于tcp,我们要自己实现类似于websocket封包协议就可以完全达到一样的效果;
 client_sock.on("message", function(data) {
 console.log(data);
 client_sock.send("Thank you!");
 });
 // end 
}
// connection 事件, 有客户端接入进来;
function on_server_client_comming (client_sock) {
 console.log("client comming");
 websocket_add_listener(client_sock);
}
server.on("connection", on_server_client_comming);
// error事件,表示的我们监听错误;
function on_server_listen_error(err) {
}
server.on("error", on_server_listen_error);
// headers事件, 回给客户端的字符。
function on_server_headers(data) {
 // console.log(data);
}
server.on("headers", on_server_headers);

2.node.js中ws模块创建客户端

var ws = require("ws");
// url ws://127.0.0.1:6080
// 创建了一个客户端的socket,然后让这个客户端去连接服务器的socket
var sock = new ws("ws://127.0.0.1:6080");
sock.on("open", function () {
 console.log("connect success !!!!");
 sock.send("HelloWorld1");
 sock.send("HelloWorld2");
 sock.send("HelloWorld3");
 sock.send("HelloWorld4");
 sock.send(Buffer.alloc(10));
});
sock.on("error", function(err) {
 console.log("error: ", err);
});
sock.on("close", function() {
 console.log("close");
});
sock.on("message", function(data) {
 console.log(data);
});

3.网页客户端创建(使用WebApi --->WebSocket)

<!DOCTYPE html>
<html>
<head>
 <title>skynet websocket example</title>
</head>
<body>
 <script>
 var ws = new WebSocket("ws://127.0.0.1:6080/index.html");
 ws.onopen = function(){
 alert("open");
 ws.send("WebSocket hellowrold!!");
 };
 ws.onmessage = function(ev){
 alert(ev.data);
 };
 ws.onclose = function(ev){
 alert("close");
 };
 ws.onerror = function(ev){
 console.log(ev);
 alert("error");
 };
 </script>
</body>
</html>

以上是“node.js中ws模块如何创建服务端和客户端”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网JavaScript频道!

--结束END--

本文标题: node.js中ws模块如何创建服务端和客户端

本文链接: https://www.lsjlt.com/news/72784.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • node.js中ws模块如何创建服务端和客户端
    小编给大家分享一下node.js中ws模块如何创建服务端和客户端,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!首先下载webso...
    99+
    2022-10-19
  • node.js中express模块如何创建服务器和http模块客户端发请求
    这篇文章将为大家详细讲解有关node.js中express模块如何创建服务器和http模块客户端发请求,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。首先下载express...
    99+
    2022-10-19
  • node.js基于dgram数据报模块如何创建UDP服务器和客户端
    小编给大家分享一下node.js基于dgram数据报模块如何创建UDP服务器和客户端,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!node.js中 dgram 模块提供了udp数据包的so...
    99+
    2022-10-19
  • python创建udp服务端和客户端
    1.udp服务端server 1 from socket import * 2 from time import ctime 3 4 HOST = '' 5 PORT = 8888 6 BUFSIZ = 1024 7 A...
    99+
    2023-01-30
    服务端 客户端 python
  • python创建tcp服务端和客户端
    1.tcp服务端server 1 from socket import * 2 from time import ctime 3 4 HOST = '' 5 PORT = 9999 6 BUFSIZ = 1024 7 A...
    99+
    2023-01-30
    服务端 客户端 python
  • Android socket实现原理详解 服务端和客户端如何搭建
    本文实例为大家分享了Android socket的实现原理,供大家参考,具体内容如下Socket套接字 是网络上具有唯一标识的IP地址和端口号组合在一起才能构成唯一能识别的标识符套接字。socket实现的原理机制:通信的两端都有Socket...
    99+
    2023-05-30
    android socket roi
  • C#中如何实现服务端与客户端通信
    这篇文章将为大家详细讲解有关C#中如何实现服务端与客户端通信,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。C#服务端与客户端通信实现实例:class Server {&n...
    99+
    2023-06-17
  • Pythonsocket如何实现服务端和客户端数据传输(TCP)
    目录socket服务端和客户端数据传输(TCP)socket服务端,客户端互相通信socket服务端和客户端数据传输(TCP) 服务器端: import socket #创建一个so...
    99+
    2022-11-11
  • node.js中怎么利用postman模拟HTTP服务器与客户端交互
    这篇文章给大家介绍node.js中怎么利用postman模拟HTTP服务器与客户端交互,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、node搭建HTTP服务器node中使用 http 模块来创建 HTTP 服务器,...
    99+
    2023-06-20
  • 如何在Golang中使用gRPC实现基础的服务端和客户端
    gRPC是一种高性能、开源和通用的远程过程调用框架,适用于跨语言和平台的RPC调用。它利用Google开发的protobuf协议进行数据传输,可以快速实现服务端和客户端的通信,并且提供了丰富的功能和扩展性。本文将介绍如何在Golang中使用...
    99+
    2023-05-14
  • nodejs中如何实现socket服务端和客户端简单通信功能
    小编给大家分享一下nodejs中如何实现socket服务端和客户端简单通信功能,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!本文实例讲述了通过node.js的net模块实现nodejs s...
    99+
    2022-10-19
  • nodejs如何实现TCP服务器端和客户端聊天功能
    这篇文章主要介绍了nodejs如何实现TCP服务器端和客户端聊天功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体如下:服务器端var&...
    99+
    2022-10-19
  • VB.NET程序中如何扫描客户端服务
    这篇文章主要为大家展示了“VB.NET程序中如何扫描客户端服务”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“VB.NET程序中如何扫描客户端服务”这篇文章吧。在大中型企业信息系统中,对客户端PC...
    99+
    2023-06-17
  • 如何使用Go实现TLS服务器和客户端
    本篇内容介绍了“如何使用Go实现TLS服务器和客户端”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!传输层安全协议(Transport Lay...
    99+
    2023-06-22
  • 如何为MySQL服务器和SSL客户端生成证书?
    dbForge Studio for MySQL是一个在Windows平台被广泛使用的MySQL客户端,它能够使MySQL开发人员和管理人员在一个方便的环境中与他人一起完成创建和执行查询,开发和调试MySQ...
    99+
    2022-10-18
  • python如何使用UDP实现客户端和服务器对话
    这篇文章主要介绍“python如何使用UDP实现客户端和服务器对话”,在日常操作中,相信很多人在python如何使用UDP实现客户端和服务器对话问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python如何使...
    99+
    2023-07-05
  • ASP.NET中如何为服务器控件添加客户端功能
    这篇文章主要介绍了ASP.NET中如何为服务器控件添加客户端功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。ASP.NET控件开发基础之服务器控件客户端功能1.减轻服务器压...
    99+
    2023-06-18
  • IDEA如何利用自带Axis工具和wsdl文件反向生成服务端客户端代码
    这篇文章主要介绍IDEA如何利用自带Axis工具和wsdl文件反向生成服务端客户端代码,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!正文IDEA,我使用的是最新版本(2021.1.1)JDK1.8tomcat-8详细...
    99+
    2023-06-15
  • Linux环境如何搭建FTP服务器以及Python怎么实现FTP客户端的交互
    Linux环境如何搭建FTP服务器以及Python怎么实现FTP客户端的交互,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。FTP 是File Transfer P...
    99+
    2023-06-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作