项目中需要消息推送,又想较低开发成本,具体需求:角色用户在后台管理页面发布一个消息,所有用这个系统的用户无论在哪个页面都能及时收到他发布的消息,后来我在网上查询到了一个第三方的免费推送服务-GoEasy push, 它可以满足我的需求,下面是如何用GoEasy进行信息推送及接收:
第一种:Java服务器端推送,web端接收推送信息
步骤:
从GoEasy官网下载jar包,并放到项目中。
https://cdn.goeasy.io/sdk/goeasy-0.1.jar
Java代码来了,你没有看错,只有两句代码:
GoEasy goEasy = GoEasy("your app key");
goEasy.publish("your_channel","your message");
如何获得appkey?
在goeasy官网上注册并激活你的账号,然后你就可以登录到后台系统自行添加application,添加完application后,系统会自动帮你生成appkey,然后你就可以使用了。
推送就完成了,下面是如何接收推送信息。
引入goeasy.js
<script type="text/javascript" class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="https://cdn.goeasy.io/goeasy.js"></script>;
初始化GoEasy对象
<script type="text/javascript">
var goEasy = new GoEasy({
appkey: 'Your app key here'
});
</script>
5.JS订阅channel
goEasy.subscribe({
channel: 'your_channel',
onMessage: function(message){ //自动接收推送信息
alert('Meessage received:'+message.content);
}
});
需要注意的是,只有当订阅的channel跟推送的channel一致时才能正确接收!(原理类似于电台的频率!)
实现完毕!
第二种:Web端推送,web端接收推送信息
步骤:
引入goeasy.js
<script type="text/javascript" class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="https://cdn.goeasy.io/goeasy.js"></script>;
初始化GoEasy对象
<script type="text/javascript">
var goEasy = new GoEasy({
appkey: 'Your app key here'
});
</script>
JS推送信息:
goEasy.publish({
channel: 'your_channel',
message: 'Hello world!'//你要推送的信息
});JS订阅信息
goEasy.subscribe({
channel: 'your_channel',
onMessage: function(message){ //自动接收推送信息
alert('Meessage received:'+message.content);
}
});
代码非常简单,不需要做各种配置!
GoEasy官网:https://goeasy.io
快速入门:https://goeasy.io/www/started.jsp
文档:https://goeasy.io/www/docs.jsp
共同学习,写下你的评论
评论加载中...
作者其他优质文章