2


听起来可能很奇怪,但我正在尝试进行非常简单的网络聊天,我需要帮助..

我用节点做到了这一点 -

var http = require('http');
var fs = require('fs');
var path = require('path');

var messages = [];

// Simple Function to load HTML/JavaScript/CSS Files
function LoadHTML(html, requrl, res) {
    var filePath = '.' + requrl;
    if (filePath == './') {
        filePath = './' + html;
    }

    var extname = path.extname(filePath);
    var contentType = 'text/html';
    switch (extname) {
        case '.js':
            contentType = 'text/javascript';
        break;
        case '.css':
            contentType = 'text/css';
        break;
    }

    fs.exists(filePath, function(exists) {

        if (exists) {
            fs.readFile(filePath, function(error, content) {
                if (error) {
                    res.writeHead(500);
                    res.end();
                }
                else {
                    res.writeHead(200, { 'Content-Type': contentType });
                    res.end(content, 'utf-8');
                }
            });
        }
        else {
            res.writeHead(404);
            res.end();
        }
    });  
}

http.createServer(function (req, res) {
    LoadHTML('index.html', req.url, res);
}).listen(8125);


我正在使用的 HTML/CSS - http://jsfiddle.net/yZ5at/


从这里我被卡住了.. 我希望当用户在文本区域中输入内容并按回车时,他的文本将显示在聊天 div 中。

但我该怎么做呢?请问有什么帮助吗?

4

1 回答 1

1

好吧,您没有对您的请求做任何事情,所以下一步可能是检查 socket.io 或为 ajax 调用制作一些客户端脚本,以将 textarea 中的文本传递给服务器并检索新消息。无论如何,简单的 loadHTMl 函数是不够的

于 2013-02-16T02:11:35.610 回答