我使用nodejs集羣與socket.io,並在主線程中使用內置的網絡庫來監聽端口並手動傳遞連接(套接字) (基於客戶端的IP地址,所以如果客戶端重新連接到服務器,客戶端將加入到同一個工作者)。這很好,但我想測試,並且我想從本地主機加入不同的工作人員。節點js網絡庫 - 獲取有關客戶端(套接字)的信息
有沒有什麼方法可以獲得有關客戶端的信息(例如瀏覽器名稱,自定義參數)或其他任何使本地主機上的兩個或多個客戶端不同的信息? - 如果我能夠在開發環境中將客戶端加入基於瀏覽器的工作人員(Chrome客戶端轉到工作人員1,Firefox客戶端轉到工作人員2),這可能很酷。
private createServer(): void {
var self = this;
this.masterServer = net.createServer(<any>{ pauseOnConnect: true }, (connection) => {
console.log('server', connection);
let worker = self.workers[self.getWorkerIndex(connection.remoteAddress, self.workerCount)];
worker.send('privateCon', connection);
}).listen(self.serverPort);
}
這是有點困難的連接必須發生在任何額外的協議信息可用之前。你希望這個工作的操作系統是什麼? – Matt
源IP,源TCP端口和目標IP是你擁有的3件東西 – Matt
dev env是windows 10.源ip,tcp端口和dedtination ip在來自localhost的任何連接上都是相同的。 – Twois