Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP基于websocket实现前台及后台实时推送

PHP基于websocket实现前台及后台实时推送

黄舟
黄舟asal
2017-03-23 10:15:354402semak imbas

 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.        订阅代码

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…..' //要推送的内容

希望对大家有帮助。

Atas ialah kandungan terperinci PHP基于websocket实现前台及后台实时推送. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn