web前端socket封装库--giraffe

简介: web前端socket封装库--giraffe

摘要:


     

最近在做前端的socket消息推送,使用了socket.io.js的最新版本。使用过的都知道socket.io.js是基于消息类型来通信的,如果消息类型多了就很难维护。所以本人就对socket.io.js进行了应用层的封装。命名为giraffe.js,giraffe的含义是长颈鹿,意为能够望的远。


源码:https://github.com/baixuexiyang/Giraffe      欢迎fork和star


使用:



giraffe.js同时支持AMD和CMD以及node.js环境的使用,针对不同环境的引用如下:


node.js


npm install socket-giraffe

requireJs


1

2

3

define(["giraffe"], function() {      

    // your code      

});

seaJs


1

seaJs.use('giraffe');

web client


1

<script src="giraffe.min.js"></script>

例子:


 

定义了两种方法,一种是通过方法进行回调,publish推送服务端,receive接收服务端推回来的消息,另外一种是回调直接写在方法里


// 初始化socket参数     
var Giraffe = new Giraffe({server: 'http://127.0.0.1:8080',autoReconnect: true});     
Giraffe.init(function (re) {     
    if (re) {     
        console.log('你已成功连接到消息服务器');     
    } else {     
    }     
});     
// 发布消息     
Giraffe.publish({data: 'test'}, function(re) {     
    if(re) {     
        console.log('发布消息成功!');     
    } else {     
        console.log('发布消息失败!');     
    }     
});     
// 接收消息        
Giraffe.receive(function(res) {        
    console.log('publish 返回消息:' + res);        
});         
// 直接回调   
Giraffe.publication({data: 'test'}, function(res) {   
    console.log('publication 回调:' + res);   
});


注意:



publish、receive、publication都是我自己定义的消息类型,你可以在源码的giraffe添加自己的消息类型。

相关文章
|
3月前
WEB端交互元件库:Axure设计师的高效利器
EQL UI是一款功能强大、组件丰富的Axure元件库,涵盖500+设计组件与完整后台模板,助力设计师高效搭建高保真原型,提升产品设计效率与质量。
584 128
|
7月前
|
网络协议 Unix Linux
# 2个类轻松构建高效Socket通信库
本文介绍了一种通过两个类`EpollEventHandler`和`IEpollEvent`构建高效Socket通信库的方法。该库支持TCP、UDP和Unix域套接字,采用I/O多路复用技术(如epoll),提升并发处理能力。通过抽象基类和具体事件类的设计,简化了API使用,便于开发者快速上手。文章还提供了服务端与客户端的实例代码,展示其在实际项目中的应用效果。此Socket库适应嵌入式环境,功能定制性强,有助于减少外部依赖并提升维护效率。
168 103
# 2个类轻松构建高效Socket通信库
|
6月前
|
JavaScript 前端开发 API
|
11月前
|
前端开发 JavaScript
除了 jsPDF,还有哪些前端库可以用于生成 PDF?
【10月更文挑战第21天】这些前端库都有各自的特点和优势,你可以根据具体的项目需求、技术栈以及对功能的要求来选择合适的库。不同的库在使用方法、性能表现以及功能支持上可能会有所差异,需要根据实际情况进行评估和选择。
|
11月前
|
Kubernetes 网络协议 Python
Python网络编程:从Socket到Web应用
在信息时代,网络编程是软件开发的重要组成部分。Python作为多用途编程语言,提供了从Socket编程到Web应用开发的强大支持。本文将从基础的Socket编程入手,逐步深入到复杂的Web应用开发,涵盖Flask、Django等框架的应用,以及异步Web编程和微服务架构。通过本文,读者将全面了解Python在网络编程领域的应用。
162 1
|
12月前
|
存储 弹性计算 算法
前端大模型应用笔记(四):如何在资源受限例如1核和1G内存的端侧或ECS上运行一个合适的向量存储库及如何优化
本文探讨了在资源受限的嵌入式设备(如1核处理器和1GB内存)上实现高效向量存储和检索的方法,旨在支持端侧大模型应用。文章分析了Annoy、HNSWLib、NMSLib、FLANN、VP-Trees和Lshbox等向量存储库的特点与适用场景,推荐Annoy作为多数情况下的首选方案,并提出了数据预处理、索引优化、查询优化等策略以提升性能。通过这些方法,即使在资源受限的环境中也能实现高效的向量检索。
458 1
|
12月前
|
存储 前端开发 JavaScript
🚀 10 个 GitHub 存储库,助你成为前端巨匠✨
本文介绍了10个极具价值的GitHub存储库,旨在帮助各级JavaScript开发人员提升技能。这些资源涵盖了从基本概念到高级算法、编码风格指南、面试准备等各个方面,包括经典书籍、实用工具和面试手册。无论您是刚入门的新手还是有经验的开发者,这些存储库都能为您提供丰富的学习资源,助您在JavaScript领域更进一步。探索这些资源,开启您的学习之旅吧!
221 0
🚀 10 个 GitHub 存储库,助你成为前端巨匠✨
|
移动开发 JavaScript 数据可视化
|
监控 网络协议 数据库连接
Python3 监控端口:使用 socket 库
Python3 监控端口:使用 socket 库
187 1
|
JSON 前端开发 JavaScript
socket.io即时通信前端配合Node案例
本文介绍了如何使用socket.io库在Node.js环境下实现一个简单的即时通信前端配合案例,包括了服务端和客户端的代码实现,以及如何通过socket.io进行事件的发送和监听来实现实时通信。
248 2

热门文章

最新文章