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,所以本页排版比较混乱,推荐你到原处查看,看完了 ...
随机推荐
- Redis集群搭建,伪分布式集群,即一台服务器6个redis节点
Redis集群搭建,伪分布式集群,即一台服务器6个redis节点 一.Redis Cluster(Redis集群)简介 集群搭建需要的环境 二.搭建集群 2.1Redis的安装 2.2搭建6台redi ...
- python----类,面向对象(封装、继承、多态)(属性,方法)
什么是对象? 对象是内存中专门用来存储数据的一块区域 对象中可以存放各种数据(数字.代码等) 对象由三部分组成(1,对象标识(id)2,对象类型(type)3,对象的值(value)) 面向对象编程是 ...
- 2.centos 7清空文件和文件夹
1.清空文件 测试文件:a.txt 1)方法一,[root@centos test]# > a.txt [root@centos test]# cat a.txt 1hjbfao hjkl23o ...
- TCP/IP__TCP协议常用协议默认端口号
- 基于efcore的分表组件开源
ShardingCore ShardingCore 是一个支持efcore 2.x 3.x 5.x的一个对于数据库分表的一个简易扩展, 目前该库暂未支持分库(未来会支持),仅支持分表,该项目的理念是让 ...
- 狂神redis学习笔记
一.Nosql概述 为什么使用Nosql 1.单机Mysql时代 90年代,一个网站的访问量一般不会太大,单个数据库完全够用.随着用户增多,网站出现以下问题 数据量增加到一定程度,单机数据库就放不下了 ...
- python中numpy库的一些使用
想不用第三方库实现点深度学习的基础部分,发现numpy真的好难(笑),在此做点遇到的函数的笔记 惯例官方文档:https://docs.scipy.org/doc/numpy-1.16.1/refer ...
- Scala类型参数(泛型)与隐式转换
package com.yz9 import org.junit.Test import scala.collection.mutable.ListBuffer class test { @Test ...
- Codeforces Round #671 (Div. 2)
比赛链接:https://codeforces.com/contest/1419 A. Digit Game 题意 给出一个 $n$ 位数,游戏规则如下: 1-indexed Raze标记奇数位 Br ...
- Python基础--核心数据类型
python的核心数据类型: Number 数字(整数,浮点数,复数,布尔型数) String 字符串 List 列表 Tuple 元组 Dictionary 字典 Set 集合 1. 整数(整型数) ...