GoEasy在web端推送及接收

阅读更多

一提到实时推送,那么大家会想到两点,一是轮询,二是http长连接。GoEasy是基于http长连接封装的免费推送服务,我们不需要考虑后台是如何实现的,而且上手相当快,一个demo几分钟就搞定。GoEasy推送支持Java, Android, JavaScript端的推送,这里我只举个在JavaScript推送和接收的例子,其余的请参考goeasy官网 https://goeasy.io/www/started.jsp, 官网上还有详细使用文档 https://goeasy.io/www/docs.jsp。

 

如何用GoEasy进行信息推送及接收:

1. 首先我需要在GoEasy官网上注册一个账号,注册完毕后,我可以自己添加application,application添加完成后,GoEasy会自动帮我生成两个key,一个是Super key, 另一个是Subscribe key。

    GoEasy官网:https://goeasy.io

    Super key:用于推送或接收

    Subscribe key:仅用于接收,不能用来推送信息

    这两个key相当于使用GoEasy服务的密码。

2. 在java后台用super key推送客户发布的消息

    2.1. 在开始写代码之前,我们需要从GoEasy官网上下载一个jar包并引入到项目中。

    2.2. 这里不方便展示我们项目的源码,我将用一个JUnit方法来代替:

   public void testPublishMessageInGoEasy(){
      GoEasy goEasy = new GoEasy("your super key");
      goEasy.publish("your_channel","your message");
   }

    注意:这里只能用你的super key, “your_channel”--你可以随意命名(最好是有意义的名字),channel非常重要,它决定到底哪些页面需要接收你发的消息。

3. 在jsp页面里接收推送消息,由于客户要求每个用户在任意页面都需要能接收到该消息,我把接收信息的部分的代码放在了main.jsp,所有的页面都引入了这个jsp页面。下面是在main.jsp接收信息的代码:

    3.1. 引入goeasy.js

           <script type="text/javascript" src="https://cdn.goeasy.io/goeasy.js">script>

    3.2. 初始化GoEasy对象并订阅channel (订阅的channel必须与推送消息时的channel一致!)

          var goeasy = new GoEasy({
                              appkey: 'your super key or your subscribe key',

                               });

         goeasy.subscribe({
                            channel: 'your_channel',
          onMessage: function (result) {
          alert("You hava a new message: " + result.content);
             }
   });

代码部分就完成了, 你可以先打开一些页面,然后在运行JUnit 测试方法,可以看到所有打开的页面都收到从Junit test里推送出来的消息。

GoEasy对推送,连接,订阅方法提供了一些回调函数,用于满足我们不同的需求,更多的请参照他们的文档(有中英文版本的哈) https://goeasy.io/www/docs.jsp

你可能感兴趣的:(GoEasy,web端,推送,接收)