GoEasy免費推送服務
這兩天剛剛做了給掃碼登入功能想趁著記憶還深刻趕緊將自己的經驗和心得記錄下來,分享給更多也對此感興趣的小夥伴們。網上也有好多參考但是總體看來也都是互相借鑑的多數是基於ajax長輪詢的。但是這種方式非常消耗客戶端的資源,後來我在網上查詢到了一個第三方的免費推送服務-GoEasy push, 它可以滿足我的需求,他可以 Java伺服器端送,web端接收推送資訊 還可以在Web端推送,web端接收推送資訊。下面是如何用GoEasy進行資訊推送及接收:
1. 首先我需要在GoEasy官網上註冊一個賬號(GoEasy官網),註冊完畢後,我可以按照流程提示免費自己新增application,application新增完成後,GoEasy會自動幫我生成兩個key,一個是Common key( 既可以傳送訊息或也可以訂閱channel來接收訊息 ), 另一個是Subscribe key( 只能用來訂閱channel來接收訊息 ) 。 這兩個key相當於使用GoEasy服務的密碼。
2. 在java後臺用Common key推送客戶釋出的訊息
在開始寫程式碼之前,我們需要從GoEasy官網按照提示上下載一個jar包(
接下來我們在java程式碼中進行訊息的釋出:
public void publishMessageInGoEasy(){
GoEasy goEasy = new GoEasy(“regionHost”,”your Common key”);
goEasy.publish(“your_channel”,”your message”);
}
注意:這裡只能用你的Common key, “your_channel”–你可以隨意命名(最好是有意義的名字),channel非常重要,它決定到底哪些頁面需要接收你發的訊息。一定要和接受資訊的channel相同。
3.當然也可以在jsp頁面中進行訊息的釋出:
var goEasy = new GoEasy({appkey:'your common key or your subscribe key'});
goEasy.publish({ channel:'your_channel',message: 'your message' });
4.在jsp頁面裡接收推送訊息:
首先引入goeasy.js:
按照官方文件說明不要將js下載到本地因為其對因不同的瀏覽器能動態生成對應的js,於是在jsp中動態引入goeasy.js
<script type="text/javascript" src="https://cdn.goeasy.io/goeasy.js" ></script>
初始化GoEasy物件並訂閱channel (再次強調訂閱的channel必須與推送訊息時的channel一致!)
var goeasy = new GoEasy({
appkey: 'your common key or your subscribe key' });
goeasy.subscribe({
channel: 'your_channel',
onMessage: function(message){
alert(message.content);
}
});
goEasy推送只需要這幾行程式碼引入jar包和js便可完成,完全符合其介紹:學習9分鐘便可完成推送接入。下一篇我將介紹我在掃碼登陸中對其的應用。