PHP基于websocket实现前台及后台实时推送
程序员文章站
2022-04-07 11:43:22
...
PHP websocket实时消息推送
实现步骤如下:
1. 获取GoEasy appkey.
在goeasy官网上注册一个账号,并新建一个app. APP创建好后系统会为该app自动生成两个key, 一个既可以用来接收又可以用来推送 (supper key),另一个只可以用来接收(subscriber key).
2. 客户端订阅一个channel.
a. 在客户端引入goeasy.js, js地址:cdn.goeasy.io/goeasy.js
需要注意的是,不能将goeasy.js下载到本地,因为goeasy会根据不同浏览器来提供不同的js. 官网上也有相应说明。
b. 订阅代码
实现步骤如下:
1. 获取GoEasy appkey.
在goeasy官网上注册一个账号,并新建一个app. APP创建好后系统会为该app自动生成两个key, 一个既可以用来接收又可以用来推送 (supper key),另一个只可以用来接收(subscriber key).
2. 客户端订阅一个channel.
a. 在客户端引入goeasy.js, js地址:cdn.goeasy.io/goeasy.js
需要注意的是,不能将goeasy.js下载到本地,因为goeasy会根据不同浏览器来提供不同的js. 官网上也有相应说明。
b. 订阅代码
var goEasy = new GoEasy({appkey: 'subscriber key'}); //这里我用的是subscriber key,因为在我的客户端我不需要推送任何消息,所以没有必要使用supper key goEasy.subscribe({ channel: 'csdnNotification', onMessage: function(message){ alert('Meessagereceived:'+message.content); //接收到推送的消息 } });
3. 前台推送及后台推送
3.1. 前台往相同channel上推送
在引入了goeasy.js的页面,直接调用goEasy. publish('csdnNotification', '您的好友222已上线'); 用法与订阅类似。
3.2. 后台往相同channel上推送. 用GoEasy提供的restful API实现
API url: goeasy.io/goeasy/publish
方式: Post
参数列表:
channel: 'csdnNotification' //与订阅的channel必须一致,否则客户端将收不到消息。因此我们也可以根据channel来控制哪些客户端可以接收。 appkey: 'supper key' //这里必须使用supper key content: 'blabla…..' //要推送的内容
希望对大家有帮助。
以上就是PHP基于websocket实现前台及后台实时推送的详细内容,更多请关注其它相关文章!
上一篇: php获取本周的开始日期和结束日期
下一篇: 求ActiveX的资料教程,该如何处理