使用Go和WebSockets構建實時聊天服務器
源代碼連接 Go Chat
現在web應用變得越來越複雜,前端開發人員的工資也是水漲船高。現在的web程序有些是可以實時更新的,用戶無需主動調用服務器或刷新瀏覽器。在早期,開發人員需要依靠ajax請求來創建非常接近實時的應用程序,現在他們能夠利用websocket的強大功能來創建完全實時的應用程序。
關於什麼是websocket查看這篇文章websocket心跳檢測前後端架構。
在本教程中,我們將使用Go編程語言和WebSockets創建一個實時聊天應用程序。前端將使用HTML5和VueJS編寫。假設你對Go語言、JavaScript和HTML5有基本的瞭解。同時假設你有一點使用VueJS的工作經驗。
JavaScript中的WebSocket
大多數現代瀏覽器的JavaScript實現中都支持WebSocket。要從瀏覽器發起一個WebSocket連接,你可以使用簡單的WebSocket JavaScript對象來發起一個WebSocket連接,就像這樣。
var ws = new Websocket("ws://example.com/ws");
你唯一需要的參數是一個指向服務器要接受WebSocket連接的URL。這個請求實際上最初是一個HTTP請求,但我們使用 "ws:///"或 "wss://"作爲安全連接。這讓服務器知道我們正在嘗試創建一個新的WebSocket連接。然後服務器將把連接 "升級 "爲客戶端和服務器之間的持續雙向連接。
一旦創建了一個新的WebSocke