node—get/post路由

1.对web服务器的封装

app.js是主文件
在这里插入图片描述
在这里插入图片描述

2.基本路由配置

在这里插入图片描述

3.get传值

get传值使用url解析模块
解析路径let getData=url.parse(req.url,true).query;

1.js文件代码
 		//get传值
        else if(pathname=="/regest"){
            //解析一定要带第二个参数true,true是确认解析,将解析的值转化为json
            let getData=url.parse(req.url,true).query;
            ejs.renderFile("view/regest.ejs",{
                urldata:getData
            },(err,str)=>{
                if(err){
                    throw err;
                }
                res.end(str);
            })
        }
        
2. regest.ejs文件代码
<body>
    注册
    <%=urldata.name%>---<%=urldata.sex%>
</body>

在这里插入图片描述

4.post传值

只有表单验证才有
② 需要监听去拿值
③ 当在注册界面点击提交的时候,链接后边会加上 /denglu 会自动网址跳转到登录界面
④ 读取数据时需要给数据前加一个问号,因为post传值方法不会给网址后边加问号,不加问号的话,表单的数据无法转化出来

1. js文件代码
  //post传值
        else if(pathname=="/denglu"){
            let info="?";
            //data有数据可读时触发
            req.on("data",(res)=>{
                info+=res.toString();
            });
            //数据读取完成触发
            req.on("end",()=>{
                //postdata   表单数据
                console.log(postdata);   //{ userid: '1111', userpwd: '2222' }
                let postdata=url.parse(info,true).query;
                //跳转到denglu.ejs界面
                ejs.renderFile("view/denglu.ejs",{
                    postdata:postdata
                },(err,str)=>{
                    if(err){
                        throw err;
                    }
                    res.end(str);
                });
            });
        }


2. 注册界面的ejs代码
<body>
    注册
    <%=urldata.name%>---<%=urldata.sex%>
    <form action="/denglu" method="POST">
        <ul>
            <li>
                账号:<input type="text" name="userid">
            </li>
            <li>
                密码:<input type="text" name="userpwd">
            </li>
            <li>
                <input type="submit" value="登录">
            </li>
        </ul>
    </form>
</body>


3. 注册成功后的跳转页面
<body>
   登录成功!
   <%=postdata.userid%>----<%=postdata.userpwd%>
</body>

5.nodejs路由模块化封装

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值