5分钟入门websocket
5 个步骤快速掌握消息发送和接收
获取您的 appkey
先注册一个irealtime账号,然后登录到后台管理端,创建一个免费应用,就能得到您的 appkey。点击注册
各种前端生态端集成 irealtime.js
html页面快速引入js文件
<script type="text/javascript" src="https://irealtime.cn/irealtime-1.0.0.js"></script>
npm 安装
npm install --save irealtime
import iRealTime from 'irealtime';
下载到本地
初始化 irealtime
使用之前获取的 appkey 实例化 irealtime 对象,只接收或者订阅消息请使用 subscriber key,同时收发消息请使用 common key。
提示:
一个页面或一个单页面应用,一个小程序或者一个 APP, 只需要初始化一个 irealtime 对象
<script
type="text/javascript"
src="https://irealtime.cn/irealtime-1.0.1.js"
></script>
<script type="text/javascript">
var realTime = new IRealTime({
host: 'hk.irealtime.cn',
appkey: '' // common key or subscribe key,
onConnected: function() {
console.log('连接成功...')
},
onDisconnected: function() {
console.log('连接断开...')
},
onConnectFailed: function(error) {
console.log('连接失败...', error)
},
})
</script>
订阅消息(接收)
在发送消息之前,您需要先完成订阅操作, 来准备接收消息。
什么是 channels?
根据您的业务需求来设定,channels是一个数组参数,只能包含数字大小写字母并且不能超过256位,通道需要和消息的发送端保持一致,就可以收到消息。
realTime.subscribe({
channels: ['myChannel01', 'myChannel02'], //可配置多个channel
onMessage: function(data) { // 这个回调函数是用来接收消息的
console.log(data)
// data的数据结构如下
/*{
channel: "myChannel01" // 哪个通道的消息
message: "hello irealtime" // 消息内容
time: 1612403977920 // 发送的时间毫秒数
userId: "" // 带userId的连接,如果没有就是空字符串
}*/
},
onSuccess: function(res) {
console.log('订阅成功...', res)
},
onFailed: function(error) {
console.log('订阅失败...', error)
},
})
发送消息
发送时,您的 channel 必须和上一步订阅的 channel 一致,才可以成功的接收消息。不论是服务端还是客户端,您都可以使用 irealtime 提供的相应代码来完成发送操作。同时也可以使用 curl 直接在控制台调用 irealtime API 来测试 irealtime 的 publish 接口。
realTime.publish({
channel: 'myChannel01',
message: 'hello irealtime',
onSuccess: function(res) {
console.log('success:', res)
},
onFailed: function(error) {
console.log('failed:', error)
},
})
恭喜您!
相信通过上边几个步骤,您已经成功的完成 irealtime 消息的发送和接收。更多详情,可以参考 irealtime 官方文档
遇到技术问题也可以与 irealtime 技术支持取得联系。
5分钟入门websocket的更多相关文章
- Shell脚本编程30分钟入门
Shell脚本编程30分钟入门 转载地址: Shell脚本编程30分钟入门 什么是Shell脚本 示例 看个例子吧: #!/bin/sh cd ~ mkdir shell_tut cd shell_t ...
- Objective-C 30分钟入门教程
Objective-C 30分钟入门教程 我第一次看OC觉得这个语言的语法有些怪异,为什么充满了@符号,[]符号,函数调用没有()这个,但是面向对象的高级语言也不外乎类,接口,多态,封装,继承等概念. ...
- Apache Shiro系列三,概述 —— 10分钟入门
一.介绍 看完这个10分钟入门之后,你就知道如何在你的应用程序中引入和使用Shiro.以后你再在自己的应用程序中使用Shiro,也应该可以在10分钟内搞定. 二.概述 关于Shiro的废话就不多说了 ...
- JavaScript 10分钟入门
JavaScript 10分钟入门 随着公司内部技术分享(JS进阶)投票的失利,先译一篇不错的JS入门博文,方便不太了解JS的童鞋快速学习和掌握这门神奇的语言. 以下为译文,原文地址:http://w ...
- 十分钟入门less(翻译自:Learn lESS in 10 Minutes(or less))
十分钟入门less(翻译自:Learn lESS in 10 Minutes(or less)) 注:本文为翻译文章,因翻译水平有限,难免有缺漏不足之处,可查看原文. 我们知道写css代码是非常枯燥的 ...
- 30分钟入门Java8之方法引用
30分钟入门Java8之方法引用 前言 之前两篇文章分别介绍了Java8的lambda表达式和默认方法和静态接口方法.今天我们继续学习Java8的新语言特性--方法引用(Method Referenc ...
- 30分钟入门Java8之默认方法和静态接口方法
30分钟入门Java8之默认方法和静态接口方法 前言 上一篇文章30分钟入门Java8之lambda表达式,我们学习了lambda表达式.现在继续Java8新语言特性的学习,今天,我们要学习的是默认方 ...
- 【原创】30分钟入门 github
很久没更新了,这篇文章重点在github的入门使用,读者可以下载github for windows shell,边看边操作,加深印象. 好了,30分钟的愉快之旅开始吧: 一.github使用的注意事 ...
- 正则表达式30分钟入门教程<转载>
来园子之前写的一篇正则表达式教程,部分翻译自codeproject的The 30 Minute Regex Tutorial. 由于评论里有过长的URL,所以本页排版比较混乱,推荐你到原处查看,看完了 ...
随机推荐
- wmi_exporter+Prometheus+Grafana
wmi_exporter+Prometheus+Grafana 原文地址: CSDN:NRlovestudy:Windows 下搭建 wmi_exporter+Prometheus+Grafana 服 ...
- stop脚本
PID=$(ps -ef | grep eladmin-system-2.0.jar | grep -v grep | awk '{ print $2 }')if [ -z "$PID&qu ...
- Hadoop伪分布式环境搭建+Ubuntu:16.04+hadoop-2.6.0
Hello,大家好 !下面就让我带大家一起来搭建hadoop伪分布式的环境吧!不足的地方请大家多交流.谢谢大家的支持 准备环境: 1, ubuntu系统,(我在16.04测试通过.其他版本请自行测试, ...
- 【Azure 事件中心】在微软云中国区 (Mooncake) 上实验以Apache Kafka协议方式发送/接受Event Hubs消息 (Java版)
问题描述 事件中心提供 Kafka 终结点,现有的基于 Kafka 的应用程序可将该终结点用作运行你自己的 Kafka 群集的替代方案. 事件中心可与许多现有 Kafka 应用程序配合使用.在Azur ...
- DICOM医学文件的解析
最近导师一直让做智慧医疗的一个项目,这里面涉及到DICOM格式的文件处理,在这里分享一下自己学到的关于DCM文件的一些内容. DICOM DICOM(DigitalImaging andCommuni ...
- HBase原理 – 分布式系统中snapshot是怎么玩的?(转载)
snapshot(快照)基础原理 snapshot是很多存储系统和数据库系统都支持的功能.一个snapshot是一个全部文件系统.或者某个目录在某一时刻的镜像.实现数据文件镜像最简单粗暴的方式是加锁拷 ...
- The Department of Redundancy Department
Write a program that will remove all duplicates from a sequence of integers and print the list of un ...
- 2020牛客暑期多校训练营(第五场)B - Graph (异或 最小生成树 分治 Trie)
B - Graph 题目链接 每次操作不会改变两点之间的路径异或和 以 1 号点为起点,算出任意一点到 1 号点的异或值 dis[i](把该值当做 i 号点权值), 那么任意两点的异或值为 \(dis ...
- 2020 CCPC-Wannafly Winter Camp Day2
2020 CCPC-Wannafly Winter Camp Day2 A 托米的字符串 虽然每个子串出现的概率是相同的,但是同一长度的子串个数是不同的,所以要分别处理.计算出某一长度的情况下,元音字 ...
- Codeforces 1368F - Lamps on a Circle (交互博弈)
这题也太新颖了吧.. 交互博弈 以前一直以为交互只能出二分 题意:长度为n的环形灯 玩家有两种操作 结束游戏 或者选择k个灯点亮 每次这个k是玩家自己选的 玩家操作后让电脑操作 电脑选择一个最优的点x ...