HTML5之廣播聊天室

2022-03-30 11:01:20 字數 1488 閱讀 8755

- 伺服器端廣播文字

- 所有客戶端都可以收到

--- 客戶端

- 定義文字框

- 定義傳送事件

textarea accesskey =t oninput="sendmsg();"

- 傳送協議

ws:// 普通web-socket

wss:// 加密web-socket

var

ws,currentuser,ele;

window.onload = function

()

catch

(syntaxerror)

}

function

sendmsg()

//關閉事件

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 支援拖放。注釋...