节点JS挂起表单提交

时间:2010-12-07 10:14:54

标签: node.js

我刚刚开始使用node.js,我想知道为什么我的小表单在提交表单时停止了。这是我的代码:

var sys = require('sys'),
    http = require('http');

    http.createServer(function (req, res) {
            switch (req.url) {
                case '/':
                    res.writeHead(200, {'Content-type': 'text/html'});
                    res.end(
                        '<form action="/myaction" method="post" enctype="multipart/form-data">'+
                        '<input type="text" name="field1">' +
                        '<input type="text" name="field2">' +
                        '<input type="submit" value="Submit">' +
                        '</form>'
                    );
                    break;
                case '/myaction':
                    res.writeHead(200, {'Content-type': 'text/html'});
                    sys.puts('Hello');
                    /*
                    if (req.method == 'POST') {
                        req.on('data', function(chunk){
                            res.writeHead(200, chunk.toString());
                        });
                    }
                    */
                    break;
            }
    }).listen(8080);

sys.puts('Server running at http://127.0.0.1:8080/');

当我按提交时,表单连接到/ myaction但从未显示。我知道它连接了,因为我看到终端中的'Hello'文本。但是,我在浏览器上看到了这一点:

  

此网页不可用。

     

网页   http://127.0.0.1:8080/myaction可能   暂时失败或可能有   永久移动到新网站   地址。

任何人都可以解释问题所在吗?

2 个答案:

答案 0 :(得分:1)

您没有在“/ myaction”-case上正确结束您的回复。也可以使用res.end()。

答案 1 :(得分:1)

我认为你应该真正使用express来帮助你减轻网络开发。在这里,您可以从创作者那里观看一个小screencast作为简短介绍。