SSM项目使用GoEasy 实现web消息推送服务
1.注册GoEasy账号创建应用获取Appkeys
https://hangzhou.goeasy.io
获取appkeys
2.编写java代码
public class test {
//我这里使用的是main函数,实际需求应该是一个定时函数,定时推送消息。
public static void main(String[] args) {
GoEasy goEasy = new GoEasy("填入你的REST Host", "填入你的Common key");
goEasy.publish("myChannel","测试",new PublishListener(){
@Override
public void onSuccess()
{
System.out.println("Publish Success");
}
@Override
public void onFailed(GoEasyError error)
{
System.out.println("Publish Failed"+error.getCode()+error.getContent());
}
});
}
}
3.编写javaScript代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script type="text/javascript" src="https://cdn-hangzhou.goeasy.io/goeasy.js"></script>
<script type="text/javascript">
var goeasy = new GoEasy({
appkey: '填入你的Common key'
});
//接收消息(订阅)
goeasy.subscribe({
channel: 'myChannel', //这里填入的需要和java代码中的一致
onMessage: function (message) {
//收到消息的第一行,打出日志,以这个时间作为检查的标准
alert('收到:' + message.content);
},
onSuccess: function () {
alert("myChannel订阅成功。");
},
onFailed: function (error) {
alert("myChannel订阅失败, 错误编码:" + error.code + " 错误信息:" + error.content)
},
});
//取消订阅
goeasy.unsubscribe({
channel: "my_channel",
onSuccess: function () {
alert("订阅取消成功。");
},
onFailed: function (error) {
alert("取消订阅失败,错误编码:" + error.code + " 错误信息:" + error.content)
}
});
//发送消息
function publishMessage() {
var publishMessage = document.getElementById("content").value;
goeasy.publish({
channel: 'myChannel',
message: publishMessage,
onFailed: function (error) {
alert(error.code + " : " + error.content);
},
onSuccess: function () {
document.getElementById("content").value = '';
}
});
}
</script>
</head>
<body>
<textarea rows="3" cols="20" id="content">
</textarea>
//用来发送消息
<button id="fasong" onclick="publishMessage()">Send</button>
</body>
先打开网页,运行main函数,就会成功推送消息
点击按钮也可以成功发送消息