二十二、Node.js-get&post

get:

前台代码:

<body>
<h1>登录</h1>
<form action="/dologin" method="get">
    账号<input type="text" name="username">
    密码<input type="text" name="password">
    <input type="submit" value="登录">
</form>
</body>

参数传递通过URL传值:

点击登录之后:

后台获取数据代码:

var http = require("http")
var url = require("url")
var ejs = require('ejs')
http.createServer(function (req, res) {
    res.writeHead(200, {"Content-Type": "text/html;charset='utf-8'"})
    var allUrl = req.url;
    var parseUrl = url.parse(allUrl,true);
    var path = parseUrl.pathname;
    if (path == "/login") {//显示登录页面
        ejs.renderFile("views/loginPage.ejs",{},function (err,data) {
            res.end(data)
        })
    } else if (path == "/dologin") {//执行登录操作
        //后台获取前台get传值数据
        console.log(parseUrl.query);//{ username: '111', password: '222' }
        res.end("dologin")
    } else  {//显示index页面
        ejs.renderFile("views/index.ejs",{},function (err,data) {
            res.end(data)
        })
    }
}).listen(8000)

post:

前台代码:

<h1>登录</h1>
<form action="/dologin" method="post">
    账号<input type="text" name="username">
    密码<input type="text" name="password">
    <input type="submit" value="登录">
</form>

点击登录之后url里面没有传值:而是在头文件里面传值

后台获取数据代码:

var http = require("http")
var url = require("url")
var ejs = require('ejs')
http.createServer(function (req, res) {
    res.writeHead(200, {"Content-Type": "text/html;charset='utf-8'"})
    var allUrl = req.url;
    var parseUrl = url.parse(allUrl,true);
    var path = parseUrl.pathname;
    //获取前台的传值方式get还是post
    var method=req.method.toLowerCase();
    console.log(method);
    if (path == "/login") {//显示登录页面
        ejs.renderFile("views/loginPage.ejs",{},function (err,data) {
            res.end(data)
        })
    } else if (path == "/dologin"&&method=='get') {//执行登录操作
        //后台获取前台get传值数据
        console.log(parseUrl.query);//{ username: '111', password: '222' }
        res.end("dologin")
    } else if (path == "/dologin"&&method=='post') {//执行登录操作
        //后台获取前台post传值数据
        var  postStr='';
        req.on("data",function (chunk) {//注意这里回调函数只写一个参数
            postStr+=chunk;
        })
        req.on("end",function (err,chunk) {
            console.log(postStr);//username=111&password=222
            //后台向前台输出js逻辑:
            res.end("<script>alert('登录成功!');history.back()</script>")
        })
    } else  {//显示index页面
        ejs.renderFile("views/index.ejs",{},function (err,data) {
            res.end(data)
        })
    }
}).listen(8000)

 

posted @ 2019-04-26 10:00  指尖下的世界  阅读(234)  评论(0编辑  收藏  举报
/* 看板娘 */ /*炸泡*/
/* 鼠标点击求赞文字特效 */