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
1npm install socket-giraffe
- requireJs
123define([
"giraffe"
],
function
() {
// your code
});
- seaJs
1seaJs.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添加自己的消息类型。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· Blazor Hybrid适配到HarmonyOS系统
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· 解决跨域问题的这6种方案,真香!
· 分享4款.NET开源、免费、实用的商城系统
· 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库