HTML 的数据单向提交到Node.js服务器

来源:互联网 发布:java字符串时间转换 编辑:程序博客网 时间:2024/05/22 15:55

第一步:包含一个表单的HTML(表单将数据发送到action指定的端口,服务器在此端口监听):

<!doctype html><html>    <head>        <title>College Task</title>        <meta charset="utf-8" />    </head>    <body>        <form action='http://localhost:8080/'  method='post'><br />            Name: <input type='text' name='name' value='Mowen_Yi' /><br />            Pass: <input type='password' name='pass' value='123456' />            <input type='submit' value='Submit' />        </form>    </body></html>

第二步:服务器监听8080端口:

var http=require('http');var querystring=require('querystring');var server=http.createServer(function(req,res){    var postData='';    req.on('data',function(data){        postData+=data;    }).on('end',function(){        if(postData!==''){            var params = querystring.parse(postData);            console.log(params['name']);            console.log(params['pass']);        }    });    res.end();}).listen(8080,function(){    console.log('Server is running');});

服务器的代码值得注意的地方有两处:
<1> req与res,req(请求)绑定了两个事件,一为接收数据事件,二为数据接收完成事件;
另外即使服务器不回复任何数据,也要使用res.end(),因为客户端在等待服务器的回应。
<2> querystring模块可以用来解析值对参数,querystring.parse(string)函数可以将字符串转化为对象,效果如下:

将服务器在控制台中运行之后,打开HTML页面点击Submit即可在控制台中看到应获得的数据。

原创粉丝点击