欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

Node.js和Socket.IO實現(xiàn)WebSockets網(wǎng)頁聊天

admin
2015年7月10日 17:23 本文熱度 6822
文章簡介:Node.js 并不能做所有事情,但它可通過 Socket.IO 庫輕松實現(xiàn) WebSockets。使用 WebSockets 可輕松構建實時多用戶的應用程序或游戲,今天我們將講述如何使用 Node.js 和 Socket.IO 構建簡單的聊天程序。

Node.js 并不能做所有事情,但它可通過 Socket.IO 庫輕松實現(xiàn) WebSockets。使用 WebSockets 可輕松構建實時多用戶的應用程序或游戲,今天我們將講述如何使用 Node.js 和 Socket.IO 構建簡單的聊天程序。

注意: 在閱讀文章之前你應該先安裝好 Node.js,同時你需要一個自己喜歡的文本編輯器,本文提及的一些源碼有些改自 http://book.mixu.net/ch13.html

下面我們開始入門教程:

首先在你的電腦上創(chuàng)建一個新目錄,姑且命名為 chat,然后在該目錄創(chuàng)建兩個文件,分別是 app.js 和 index.html。

app.js 文件內(nèi)容如下:

var fs = require('fs')
    , http = require('http')
    , socketio = require('socket.io');
 
var server = http.createServer(function(req, res) {
    res.writeHead(200, { 'Content-type': 'text/html'});
    res.end(fs.readFileSync(__dirname + '/index.html'));
}).listen(8080, function() {
    console.log('Listening at: http://localhost:8080');
});
 
socketio.listen(server).on('connection', function (socket) {
    socket.on('message', function (msg) {
        console.log('Message Received: ', msg);
        socket.broadcast.emit('message', msg);
    });
});

上述代碼是一個超級簡單的聊天服務器的實現(xiàn),該服務器發(fā)送 index.html 并偵聽所有 WebSockets 請求,如果你發(fā)送一個 hi 的聊天信息,格式如下:

{"name":"message","args":["hi"]}

index.html 頁面代碼如下:

<html>
<head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
    <script src="/socket.io/socket.io.js"></script>
    <script>
        $(function(){
            var iosocket = io.connect();
 
            iosocket.on('connect', function () {
                $('#incomingChatMessages').append($('<li>Connected</li>'));
 
                iosocket.on('message', function(message) {
                    $('#incomingChatMessages').append($('<li></li>').text(message));
                });
                iosocket.on('disconnect', function() {
                    $('#incomingChatMessages').append('<li>Disconnected</li>');
                });
            });
 
            $('#outgoingChatMessage').keypress(function(event) {
                if(event.which == 13) {
                    event.preventDefault();
                    iosocket.send($('#outgoingChatMessage').val());
                    $('#incomingChatMessages').append($('<li></li>').text($('#outgoingChatMessage').val()));
                    $('#outgoingChatMessage').val('');
                }
            });
        });
    </script>
</head>
<body>
Incoming Chat:&nbsp;<ul id="incomingChatMessages"></ul>
<br />
<input type="text" id="outgoingChatMessage">
</body>
</html>

該頁面雖然不怎么吸引人,但是可正常工作。接下來打開兩個瀏覽器,必須得是支持 WebSockets 的瀏覽器,例如 Chrome 或者 Safari。

下一步就是安裝 Socket.IO 了,可在命令行窗口中執(zhí)行如下命令:

$ npm install socket.io

然后運行 app.js 文件:

$ node app.js

現(xiàn)在你可以打開兩個瀏覽器,訪問 http://localhost:8080/ 地址開始互聊了。

英文原文:http://www.giantflyingsaucer.com/blog/?p=3751 


該文章在 2015/7/10 17:23:09 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務費用、相關報表等業(yè)務管理,結合碼頭的業(yè)務特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved