前臺可以設置一個setinterval,定期發(fā)送ajax監(jiān)聽后臺,也可以用HTML5的websocket,html5的方式比較新,消息比較短,適合做聊天系統(tǒng)。
創(chuàng)新互聯(lián)網(wǎng)站建設提供從項目策劃、軟件開發(fā),軟件安全維護、網(wǎng)站優(yōu)化(SEO)、網(wǎng)站分析、效果評估等整套的建站服務,主營業(yè)務為成都網(wǎng)站建設、成都網(wǎng)站設計,APP應用開發(fā)以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。創(chuàng)新互聯(lián)深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
在WebSocket API中,瀏覽器和服務器只需要要做一個握手的動作,然后,瀏覽器和服務器之間就形成了一條快速通道。
webSocket是html5新引入的技術,允許后臺隨時向前端發(fā)送文本或者二進制消息,WebSocket是一種全新的協(xié)議,不屬于http無狀態(tài)協(xié)議,協(xié)議名為“ws”,這意味著一個websocket連接地址會是這樣的寫法
WebSocket是為解決客戶端與服務端實時通信而產生的技術。其本質是先通過HTTP/HTTPS協(xié)議進行握手后創(chuàng)建一個用于交換數(shù)據(jù)的TCP連接,此后服務端與客戶端通過此TCP連接進行實時通信。
消息推送選擇極光。JPush 是經過考驗的大規(guī)模 App 推送平臺,每天推送消息量級為數(shù)百億條。 開發(fā)者集成 SDK 后,可以通過調用 API 推送消息。同時,JPush 提供可視化的 web 端控制臺發(fā)送通知,統(tǒng)計分析推送效果。 JPush 全面支持 Android, iOS, Winphone 三大手機平臺。
HTML5 WebSocket實現(xiàn)消息推送有以下兩種方法:
長連接:在頁面里嵌入一個隱蔵iframe,將這個隱蔵iframe的src屬性設為對一個長連接的請求或是采用xhr請求,服務器端就能源源不斷地往客戶端輸入數(shù)據(jù)。 優(yōu)點:消息即時到達,不發(fā)無用請求;管理起來也相對便。
Flash Socket:在頁面中內嵌入一個使用了Socket類的 Flash 程序JavaScript通過調用此Flash程序提供的Socket接口與服務器端的Socket接口進行通信,JavaScript在收到服務器端傳送的信息后控制頁面的顯示。 優(yōu)點:實現(xiàn)真正的即時通信,而不是偽即時。
實現(xiàn)消息推送可以試一試極光。極光是國內領先的移動開發(fā)者服務提供商,近十年里,極光緊密圍繞移動開發(fā)者的需求,打造了一系列針對開發(fā)者運營、增長及變現(xiàn)的產品。
除非你推送的就是一個鏈接,如果是推送一篇文章是實現(xiàn)不了的。不過你可以提示用戶點擊原文鏈接查看效果。
通過后臺服務的支持來實現(xiàn)消息推送。實現(xiàn)消息推送的原理是:
1、首先,需要在應用程序進行注冊一個消息推送。
2、然后,IOS跟APNS Server要deviceToken。這樣子應用程序才能接受deviceToken。
3、緊接著,應用程序將deviceToken發(fā)送給PUSH服務端程序。
4、服務端會向程序向APNS服務發(fā)送消息。
5、最后,APNS服務將消息發(fā)送給iPhone應用程序Push service方案評價標準這樣就行了。
消息推送可以使用深圳極光家的消息推送軟件。極光聯(lián)賦能企業(yè)流量變現(xiàn),一站式流量接入運營解決方案,提供優(yōu)質廣告資源,多維度用戶標簽,豐富的廣告形式,發(fā)揮流量的最大價值。
主要介紹其中的五種實現(xiàn)方式:短輪詢、Comet、Flash XMLSocket、Server-sent、WebSocket
1、短輪詢
指在特定的的時間間隔(如每10秒),由瀏覽器對服務器發(fā)出HTTP request,然后由服務器返回最新的數(shù)據(jù)給客戶端的瀏覽器。瀏覽器做處理后進行顯示。無論后端此時是否有新的消息產生,都會進行響應
2、Comet
包括了長輪詢和長連接,長輪詢是客戶端向服務器發(fā)送Ajax請求,服務器接到請求后hold住連接,直到有新消息才返回響應信息并關閉連接,客戶端處理完響應信息后再向服務器發(fā)送新的請求;長連接是在頁面中的iframe發(fā)送請求到服務端,服務端hold住請求并不斷將需要返回前端的數(shù)據(jù)封裝成調用javascript函數(shù)的形式響應到前端,前端不斷收到響應并處理
3、Flash XMLSocket
在 HTML 頁面中內嵌入一個使用了 XMLSocket 類的 Flash 程序。JavaScript 通過調用此 Flash 程序提供的socket接口與服務器端的socket進行通信。JavaScript 在收到服務器端以 XML 格式傳送的信息后可以很容易地控制 HTML 頁面的內容顯示
4、Server-sent
服務器推指的是HTML5規(guī)范中提供的服務端事件EventSource,瀏覽器在實現(xiàn)了該規(guī)范的前提下創(chuàng)建一個EventSource連接后,便可收到服務端的發(fā)送的消息,實現(xiàn)一個單向通信??蛻舳诉M行監(jiān)聽,并對響應的信息處理顯示
5、WebSocket
WebSocket是HTML5下一種新的協(xié)議,是基于TCP的應用層協(xié)議,只需要一次連接,便可以實現(xiàn)全雙工通信,客戶端和服務端可以相互主動發(fā)送消息??蛻舳诉M行監(jiān)聽,并對響應的消息處理顯示
針對自己系統(tǒng)的應用場景選擇合適的推送方案才是合理的,因此最后簡單說一下實現(xiàn)個性化推送的兩種方式。第一種很簡單,直接使用第三方實現(xiàn)的推送,無需復雜的開發(fā)運維,直接可以使用。第二種就是自己封裝,可以選擇如今較為火熱的WebSocket來實現(xiàn)系統(tǒng)的推送。
關于第三方推送平臺,極光推送,操作簡單,穩(wěn)定性高,送達率快