- 伺服器端廣播文字
- 所有客戶端都可以收到
--- 客戶端
- 定義文字框
- 定義傳送事件
textarea accesskey =t oninput="sendmsg();"
- 傳送協議
ws:// 普通web-socket
wss:// 加密web-socket
varws,currentuser,ele;
window.onload = function
()
catch
(syntaxerror)
}
functionsendmsg()
//關閉事件
ws.onclose = function
(e);
window.onunload = function
();
var ws = require(__dirname + '/lib/ws'),server =ws.createserver();
var user_cols ={};
server.addlistener ("connection", function
(conn) ;
msg.user =conn.id;
msg.color =user_cols[conn.id];
msg.text = "乙個新的使用者加入聊天!";
//廣播
conn.broadcast(jso n.stringify(msg));
}
conn.addlistener("message", function(message) ;
//防注入處理
message = message.replace(/);
message = message.replace(/>/g, ">");
msg.text =message;
msg.user =conn.id;
msg.color =user_cols[conn.id];
//輸出內容
conn.write(json.st ringify(msg));
//廣播
conn.broadcast(jso n.stringify(msg));
});});
server.addlistener("close", function(conn) ;
msg.user =conn.id;
msg.color =user_cols[conn.id];
msg.text = "乙個使用者已經離開了聊天!";
conn.broadcast(jso n.stringify(msg));
});server.listen(8887);
PHP websocket之聊天室實現
php部分 error reporting e all set time limit 0 設定超時時間為無限,防止超時 date default timezone set asia shanghai class websocket catch exception e this sockets 0 r...
GO 小白之併發聊天室
因為沒有寫客戶端 可以在cmd中利用 nc u 來充當客戶端 廣播使用者上線 1 主go程中建立socket defer 2 迴圈監聽客戶端連線請求 3 有乙個客戶端鏈結 建立新go程處理客戶資料 4 組織使用者相關資訊 全域性變數 結構體 map channel 5 hadlconn 初始化新使用...
HTML5學習之 HTML 5 拖放
拖放 drag 和 drop 是 html5 標準的組成部分。拖放是一種常見的特性,即抓取物件以後拖到另乙個位置。在 html5 中,拖放是標準的一部分,任何元素都能夠拖放。internet explorer 9 firefox opera 12 chrome 以及 safari 5 支援拖放。注釋...