1. 程式人生 > >如何快速搞定websocket

如何快速搞定websocket

# 5 個步驟快速掌握websocket訊息傳送和接收 ## 1. 獲取您的 appkey 先註冊一個賬號,登入後,建立一個應用,就能得到您的 appkey。 詳情見 [獲取開發者賬號和 appkey](https://irealtime.cn) ## 2. 客戶端整合 irealtime.js 直接在頁面中引用 ```js ``` npm 安裝 ```sh npm install --save irealtime import IRealTime from 'irealtime'; ``` 下載到本地 [下載地址 1](https://irealtime.cn/irealtime-1.0.1.js) ## 3. 初始化 irealtime 使用之前獲取的 appkey 初始化 irealtime 物件,如果您的客戶端需要傳送訊息,請使用 common key。如果您的客戶端只需要接收訊息,不需要傳送訊息,可以使用 subscriber key。 > 提示:
一個頁面或一個單頁面應用,一個小程式或者一個 APP, 只需要初始化一個 irealtime 物件 ```html ``` ## 4. 訂閱訊息(接收) 在傳送訊息之前,您需要先完成訂閱操作, 來準備接收訊息。 > 什麼是 channels?
根據您的業務需求來設定,channels是一個數組引數,只能包含數字大小寫字母並且不能超過256位,通道需要和訊息的傳送端保持一致,就可以收到訊息。 ```js realTime.subscribe({ channels: ['myChannel01', 'myChannel02'], //可配置多個channel onMessage: function(data) { // 這個回撥函式是用來接收訊息的 console.log(data) // data的資料結構如下 /*{ channel: "myChannel01" // 哪個通道的訊息 message: "hello irealtime" // 訊息內容 time: 1612403977920 // 傳送的時間毫秒數 userId: "" // 帶userId的連線,如果沒有就是空字串 }*/ }, onSuccess: function(res) { console.log('訂閱成功...', res) }, onFailed: function(error) { console.log('訂閱失敗...', error) }, }) ``` ## 5. 傳送訊息 傳送時,您的 channel 必須和上一步訂閱的 channel 一致,才可以成功的接收訊息。不論是服務端還是客戶端,您都可以使用 irealtime 提供的相應程式碼來完成傳送操作。同時也可以使用 curl 直接在控制檯呼叫 irealtime API 來測試 irealtime 的 publish 介面。 ```js realTime.publish({ channel: 'myChannel01', message: 'hello irealtime', onSuccess: function(res) { console.log('success:', res) }, onFailed: function(error) { console.log('failed:', error) }, }) ``` 相信通過上邊幾個步驟,您已經成功的完成 irealtime 訊息的傳送和接收。更多詳情,可以參考 [irealtime ](https://irealtime.cn)官方文件 遇到技術問題也可以與 [irealtime ](https://irealtime.cn) 技術支援取得