博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
node接受get及post请求参数
阅读量:2066 次
发布时间:2019-04-29

本文共 1659 字,大约阅读时间需要 5 分钟。

routeMain.js代码:

var http = require('http');
var url=require('url');
var router=require('./router');//调用只有一个函数的js文件

http.createServer(function (request,response){

    response.writeHead(200,{'Content-Type':'text/html;charset=utf-8'});
    if(request.url!="/favicon.ico"){ //清楚第二次访问
        var pathname=url.parse(request.url).pathname;
        response.write(pathname+"<br>");//结果类似/name=ceshi
        pathname=pathname.replace(/\//,'');//正则去掉前面的斜杠

        try{

            router[pathname](request,response);
        }catch(err){
            console.log(err);
            response.write(err.toString()+"<br>");
        }
    }
}).listen(8001);

router.js代码:

var fs=require('fs');
var url=require('url');
var querystring=require('querystring');//接受post参数的时候需要导入

module.exports={

    login:function(req,res){
        //get方式接收参数
/*        var getdata=url.parse(req.url,true).query;
        if(getdata['email']!=undefined){
            console.log(getdata);
            console.log(getdata['email']);
        }*/

        //post方式接受参数

        var post='';//定义了一个post变量,用于暂存请求体的信息
        req.on('data',function(chunk){//通过req的data事件监听函数
            post+=chunk;
        });
        req.on('end',function(){//通过req的end事件监听本次post流结束
           post=querystring.parse(post);
           res.write('收到参数email:'+post['email']+'\n');
           res.write('收到参数pwd:'+post['pwd']+'\n');
        });

        function recall(data){//创建一个闭包回调函数

            res.write(data);
            console.log(555);
            res.end('ok');//操作完异步读取后,执行函数再关闭主程序
        }

        fs.readFile('./login.html',function(err,data){

            if(err){
                console.log(err);
            }else{
                recall(data);
                console.log(data.toString());
            }
        });

    }
}

login.html代码:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>测试提交参数</title>
</head>
<body>
    <form action="/login" method="post">
        <input type="text" name="email"><br>
        <input type="text" name="pwd"><br>
        <input type="submit" value="登录">
    </form>
</body>
</html>

转载地址:http://hzkmf.baihongyu.com/

你可能感兴趣的文章
Oracle PL/SQL语言初级教程之过程和函数
查看>>
Oracle PL/SQL语言初级教程之表和视图
查看>>
Oracle PL/SQL语言初级教程之完整性约束
查看>>
PL/SQL学习笔记
查看>>
如何分析SQL语句
查看>>
结构化查询语言(SQL)原理
查看>>
SQL教程之嵌套SELECT语句
查看>>
几个简单的SQL例子
查看>>
日本語の記号の読み方
查看>>
计算机英语编程中一些单词
查看>>
JavaScript 经典例子
查看>>
判断数据的JS代码
查看>>
js按键事件说明
查看>>
AJAX 初次体验!推荐刚学看这个满好的!
查看>>
AJAX 设计制作 在公司弄的 非得要做出这个养的 真晕!
查看>>
AJAX 自己研究玩的
查看>>
javascript(js)数组操作
查看>>
用JavaScript脚本实现Web页面信息交互
查看>>
window 窗口对象操作
查看>>
公司一位老员工愤然离去的留信!崩溃!
查看>>