Web前端开发网

fly63.com

首页 资源 工具 文章 教程 栏目
  • 在线搜索
  • 文章标签
  • 广告合作
  • 赞助一下
  • 关于我们
资源推荐
扣子Coze
职场AI,就用扣子
免费资源下载中心
一站式解决工作学习需求的宝藏网站
美图设计室
AI智能一键生成海报,免费平面设计
必火AI
数字人一站式创作平台
豆包AI
字节跳动旗下 AI 智能助手
宝塔服务器面板
简单好用的服务器运维面板
fly63工具箱
简单、易用、便捷的在线工具
友情链接交易
为广大站长提供友情链接买卖、软文交易等服务
3387游戏盒子
提供热门折扣手游,助你轻松畅玩各种类型的游戏
阿里云优惠券
卓越的云计算技术和服务提供商

资源分类

AI智能 酷站推荐 招聘/兼职 框架/库 模块/管理 移动端UI框架 Web-UI框架 Js插件 Jquery插件 CSS相关 IDE环境 在线工具 图形动效 游戏框架 node相关 调试/测试 在线学习 社区/论坛 博客/团队 前端素材 图标/图库 建站资源 设计/灵感 IT资讯
网站收录 / 问题反馈

faye-websocket

分享
复制链接
新浪微博
QQ 好友

扫一扫分享

GitHub:https://github.com/faye/faye-websocket-node
网站描述:Node.js 应用程序中命令预先存在的 WebSocket 连接
GitHub

Faye WebSocket是从 Faye 项目中提取出来的,它是一个多用途的 WebSocket,它可以很容易地在 Node.js 应用程序中命令预先存在的 WebSocket 连接。

Faye WebSocket 仅提供标准的 WebSocket api 和在 Node.js 中构建 WebSocket 客户端和服务器所需的类。它不提供服务器本身或提供任何其他抽象。

要安装Faye WebSocket,请运行 npm install faye-WebSocket。Faye项目的README部分提供了入门的必要文档。

安装

npm install faye-websocket

在 Node 中处理 WebSocket 连接

您可以通过侦听 HTTP 升级请求并为请求创建新套接字来处理服务器端的 WebSocket。例如,这是您实现回显服务器的方式:

var WebSocket = require('faye-websocket'),
http = require('http');

var server = http.createServer();

server.on('upgrade', function(request, socket, body) {
if (WebSocket.isWebSocket(request)) {
var ws = new WebSocket(request, socket, body);

ws.on('message', function(event) {
ws.send(event.data);
});

ws.on('close', function(event) {
console.log('close', event.code, event.reason);
ws = null;
});
}
});

server.listen(8000);

WebSocket对象也是双工流,因此您可以将该 ws.on('message', ...)行替换为:

ws.pipe(ws);

请注意,在某些情况下(特别是通过 HTTP 代理连接的 Draft-76 客户端),WebSocket 握手在您调用后不会完成,new WebSocket()因为服务器尚未收到来自客户端的整个握手。在这种情况下,调用ws.send()将在内存中缓冲消息,直到握手完成,此时任何缓冲的消息都将发送到客户端。

如果需要检测 WebSocket 握手何时完成,可以使用 onopen事件。

如果连接的协议版本支持,可以调用ws.ping()发送ping消息,等待客户端响应。此方法接受一个消息字符串,以及一个在收到匹配的 pong 消息时触发的可选回调。true当且仅当发送了 ping 消息时,它才会返回。如果客户端不支持 ping/pong,则此方法不发送数据并返回 false.

ws.ping('Mic check, one, two', function() {
// fires when pong is received
});



仅供个人学习参考/导航指引使用,具体请以第三方网站说明为准,本站不提供任何专业建议。如果地址失效或描述有误,请联系站长反馈~感谢您的理解与支持!

链接: https://fly63.com/nav/3610

更多»
热门资源
node
一个基于 Chrome V8 引擎的 JavaScript 运行环境
官网
GitHub
Express
基于 Node.js 平台,快速、开放、极简的 web 开发框架
官网
GitHub
pm2
pm2 是一个带有负载均衡功能的Node应用的进程管理器
官网
GitHub
Koa
基于 Node.js 平台的下一代 web 开发框架
官网
GitHub
Egg.js
为企业级框架和应用而生
官网
GitHub
Primus
通用包装器实时框架
点击进入
GitHub
Electrode
一个用于构建通用 React / Node.js 应用程序的平台
点击进入
GitHub
faye-websocket
Node.js 应用程序中命令预先存在的 WebSocket 连接
点击进入
GitHub
vm2
一个Node.js 官方 vm 库的替代品
点击进入
GitHub
node-opencv
node视觉算法库
官网
GitHub
node-xml2js
Json与xml相互转化的工具
点击进入
GitHub
node-red
一套开源可视化界面开发工具
官网
GitHub
类似于faye-websocket的资源
chalk
修改控制台中字符串的样式
点击进入
GitHub
Mean.js
一种全栈 Javascript 开发架构
官网
GitHub
nlp.js
基于node自然语言处理的一个库
官网
GitHub
Zetta
创建跨地理分布式计算机和云运行的物联网服务器
官网
GitHub
Spine.js
一个构建JavaScript Web应用的轻量级MVC框架
官网
GitHub
debug
一款node.js打印调试日志模块
官网
GitHub
moleculer
快速强大的 Node.js 微服务框架
官网
GitHub
foy
轻量级的基于 nodejs 的通用 build 工具
官网
目录

手机扫一扫预览

》
分享组件加载中...
首页 技术导航 在线工具 技术文章 教程资源 前端标签 AI工具集 前端库/框架 实用工具箱 广告合作 关于我们

Copyright © 2018 Web前端开发网 All Rights Reserved. 提供免费在线工具、编程学习资源(教程/框架/库),内容以学习参考为主,助您解决各类实际问题,快速提升专业能力。