在做一個(gè)智能硬件的服務(wù)器,GatewayWorker相當(dāng)于一個(gè)轉(zhuǎn)發(fā)平臺(tái)。瀏覽器走websocket,智能硬件走tcp。
1)瀏覽器先綁定uid到Gateway(比如qq號(hào))
2)智能硬件綁定uid到Gateway (比如mac)
這兩個(gè)uid并沒有直接的綁定關(guān)系,請(qǐng)問如何做到在Gateway端就有uid之間的綁定關(guān)系?
我現(xiàn)在的做法是在網(wǎng)頁(yè)端那邊的建立了數(shù)據(jù)庫(kù),記錄了瀏覽器uid和硬件的綁定關(guān)系,每次瀏覽器發(fā)送每條命令都要查詢數(shù)據(jù)庫(kù)對(duì)應(yīng)的硬件uid是什么,組合成{"type":"send","web_uid":"web","device_uid":"mac","contant":"hello"},在,Gateway中提取出硬件uid再通過(guò)sendToUid發(fā)送給硬件;
同樣硬件發(fā)送給瀏覽器也需要帶上自己uid和瀏覽器uid。。
請(qǐng)問Gateway有木有更為簡(jiǎn)便的方法,可以讓瀏覽器過(guò)來(lái)的Message,自動(dòng)記得他需要發(fā)送給的硬件uid?