模拟websocket推送消息服务mock工具二
模拟websocket推送消息服务mock工具二
在上一篇博文中有提到《使用electron开发一个h5的客户端应用创建http服务模拟后端接口mock》使用electron创建一个模拟后端http接口的工具mock,在通常情况下,这已经足够大多数的应用场景,但还是不够,作为一个模拟工具,不能模拟后端socket推送怎么行呢,请把我的工具与那些纯静态的模拟服务区别开来,我做的是一个能够减少前端开发工作量的东西,而不是一个单元测试工具。
在websocket上面,nodejs比较有名气的就是socket.io和ws了,它们之间谁优谁劣,我不作评价了,因为只是做他的模拟服务,所以在工具中,我不作过多的限制,可以先看下这一版本的mock的主界面:

主界面中提供了两种推送服务:socket和ws,分别对应着socket.io和websocket/ws两种表现形式。添加配置和http服务类似:
作为一个推送服务,它完成下面这些功能
- 推送消息的频率
- 一个可变化的值。
- 可以依次推送消息,所以可以推多条消息
- 可以关闭、打开推送
所以它的界面如下:

添加完成后,再回到主界面,我们就可以启动推送服务了,这里需要注意的是,socket.io的服务我是直接放在http上的,所以需要先启动http服务再启动socket服务,ws是一个独立的端口号。效果如下:

他们调用的方式也不一样。socket.io的调用方式更直接,可以参考文档,目录都是以message事件为准。
//socket.io的调用
socket = io.connect('http://localhost:8080');
socket.emit('message', '测试成功!');
socket.on('message', function (data) {
$('#sctips').html(data);
});
//ws服务的调用
const ws = new WebSocket('ws://localhost:8090/ws');
ws.on('message', function incoming(data) {
$('#wstips').html(data)
});
这样我们就可以在前端中模拟socket服务了,也可以当作一个优化工具,把频率改到很高,测试网页在高频率的刷新下的执行效率。注意,每次配置的修改都需要重启一下服务。
另外,这次其实是两次版本的更新,除了更新了模拟websocket推送外,还添加了一个新的工具,创建本地http站点,他可以随意的选择本机的文件夹作为站点目录,如下图所示:

然后点击右侧的本地站点,即可以创建一个http://localhost:8000的本地静态映射站点。
简单好用,并且直观,最后,我们再展望下下个版本吧,可以实现文件打包压缩功能,先做sass和less的编译吧。
最后,放下mock工具的几个下载地址:
https://tianxiangbing.github.io/mock/updates/mock.exe
或者http://www.lovewebgames.com/app/mock/mock.exe
或者绿化版本 http://www.react-cn.com/app/mock/mock.rar
如果有用的话,就给作者github一颗小星星吧!
模拟websocket推送消息服务mock工具二的更多相关文章
- GoEasy实现websocket 推送消息通知到客户端
最近在实现一个推送功能,用户扫描二维码签到,后台及时将签到成功信息推送到浏览器端.排除了前端ajax轮询的方式,决定采用websocket及时推送. 于是发现了第三方websocket推送库GoEas ...
- 免注册公众号的三种微信推送消息服务的C#代码实现
有时候我们需要监控一些网络上的变化,但是每次去刷新网页却又很麻烦,而且大部分刷新的时候网页并没有更新.那么有没有一个工具,可以监控网页变化,并将变化的结果推送到手机微信上呢? 这里有很多应用场景,比如 ...
- 小程序推送消息(Template)
最近搞小程序模拟推送消息,才发现小程序推送消息接口准备下线. 请注意,小程序模板消息接口将于2020年1月10日下线,开发者可使用订阅消息功能 咱们现在有需求,所以不管下不下,完成再说. 一:”获取a ...
- spring集成webSocket实现服务端向前端推送消息
原文:https://blog.csdn.net/ya_nuo/article/details/79612158 spring集成webSocket实现服务端向前端推送消息 1.前端连接webso ...
- 结合实际需求,在webapi内利用WebSocket建立单向的消息推送平台,让A页面和服务端建立WebSocket连接,让其他页面可以及时给A页面推送消息
1.需求示意图 2.需求描述 原本是为了给做unity3d客户端开发的同事提供不定时的消息推送,比如商城购买道具后服务端将道具信息推送给客户端. 本篇文章简化理解,用“相关部门开展活动,向全市人民征集 ...
- Spring Boot 集成 WebSocket 实现服务端推送消息到客户端
假设有这样一个场景:服务端的资源经常在更新,客户端需要尽量及时地了解到这些更新发生后展示给用户,如果是 HTTP 1.1,通常会开启 ajax 请求询问服务端是否有更新,通过定时器反复轮询服务端响应的 ...
- 用JPUSH极光推送实现服务端向安装了APP应用的手机推送消息(C#服务端接口)
这次公司要我们做一个功能,就是当用户成功注册以后,他登录以后要收到消息,当然这个消息是安装了我们的手机APP应用的手机咯. 极光推送的网站的网址是:https://www.jpush.cn/ 极光推送 ...
- 我写的websocket推送例子,每隔5秒服务器向客户端浏览器发送消息(node.js和浏览器)
node.js服务端 先要安装ws模块的支持 npm install ws 服务端(server.js) var gws; var WebSocketServer = require('ws').Se ...
- 使用极光推送(www.jpush.cn)向安卓手机推送消息【服务端向客户端主送推送】C#语言
在VisualStudio2010中新建网站JPushAndroid.添加引用json帮助类库Newtonsoft.Json.dll. 在web.config增加appkey和mastersecret ...
随机推荐
- Flex布局及其应用
什么是弹性盒子? 弹性盒子是 CSS3 的一种新的布局模式.相对于传统的依赖于display+position+float的布局方式,弹性盒子更加以有效的方式来对一个容器中的子元素进行排列.对齐和分配 ...
- exits, in, left join性能比较
exits in left join性能比较 ,笔者使用的是MYSQL数据库,这三个关键字方法在其他的关系数据库里也是大同小异,如果各种有兴趣,自行比较. 我这里有一个249_account 表,总 ...
- BZOJ 3171 循环格 最小费用流
题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=3171 题目大意: 一个循环格就是一个矩阵,其中所有元素为箭头,指向相邻四个格子.每个元 ...
- Python 3 实现定义跨模块的全局变量和使用
尽管某些书籍上总是说避免使用全局变量,但是在实际的需求不断变化中,往往定义一个全局变量是最可靠的方法,但是又必须要避免变量名覆盖. Python 中 global 关键字可以定义一个变量为全局变量,但 ...
- numpy的操作
import numpy as np ######################## # 索引 n1 = np.random.randint(0, 100, 10) # print(n1) ''' ...
- Hadoop学习之路(十)HDFS API的使用
HDFS API的高级编程 HDFS的API就两个:FileSystem 和Configuration 1.文件的上传和下载 package com.ghgj.hdfs.api; import org ...
- 使用阿里云的maven仓库
在maven的settings.xml文件里的mirrors节点,添加如下子节点: <mirror> <id>nexus-aliyun</id> <mirro ...
- 多线程之并发容器ConcurrentHashMap
这部分内容转载自: http://www.haogongju.net/art/2350374 JDK5中添加了新的concurrent包,相对同步容器而言,并发容器通过一些机制改进了并发性能.因为同步 ...
- dbcp最终版本
注意:我们在使用有参的queryrunner的时候,不需要关闭connection和DataSource 这些都queryrunner 都替我们完成.我们不需要关系资源释放. 工具类: package ...
- 如何在C#程序中模拟域帐户进行登录操作 (转载)
.NET Core .NET Core也支持用PInvoke来调用操作系统底层的Win32函数 首先要在项目中下载Nuget包:System.Security.Principal.Windows 代码 ...