nodejs处理表单简单实例
在这个实例中,我们需要用到nodejs的http模块。具体的思路如下:
你需要先创建一个 http 的实例,在其请求处理函数中手动编写req 对象的事件监听器。当客户端数据到达时,将 POST 数据暂存在闭包的变量中,直到 end事件触发,解析 POST 请求,处理后返回客户端。
html页面(index.html):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>http test</title> </head> <body> <form method="post" action="http://localhost:3000/"> <label for="title">title:</label><input id="title" type="text" name="title" /><br> <label for="text">text:</label><textarea id="text" name="text"></textarea><br> <input type="submit" value="submit" /> </form> </body> </html>
服务器代码(service.js):
var http = require('http'); var querystring = require('querystring'); var server = http.createServer(function(req, res) { var post = ''; req.on('data', function(chunk) { post += chunk; }); req.on('end', function() { post = querystring.parse(post); res.write(post.title); res.write(post.text); res.end(); }); }).listen(3000);
运行服务器:
打开index.html页面输入数据,并且点击submit按钮
服务器接受数据处理后,把结果返回页面