Express框架的基本使用方法

Express是一个基于Node.js平台的web应用开发框架,在Node.js基础之上扩展了web应用开发所需要的基础功能,从而使得我们开发Web应用更加方便、更加快捷。

1.安装

打开电脑的终端,输入 npm install express,即可安装。

2.中间件

“Express是一个自身功能极简,完全是路由和中间件构成一个web开发框架:从本质上来说,一个Express应用就是在调用各种中间件。”所以中间件对于我们而言是非常重要的。

1、app.use([path],function)

path:是路由的url,默认参数‘/',意义是路由到这个路径时使用这个中间件

function:中间件函数

2、内置中间件

 express.static 是Express目前唯一内置的一个中间件。用来处理静态资源文件。

const static = require('express-static');

server.use(expressstatic('./www'));

3、自定义中间件

在上面中间件结构中,我们知道了,中间件使用时的第二个参数是一个Function,然而,要自定义一个中间件,就是倒腾一番这个Function。

这个function总共有三个参数(req,res,next);

当每个请求到达服务器时,nodejs会为请求创建一个请求对象(request),该请求对象包含客户端提交上来的数据。同时也会创建一个响应对象(response),响应对象主要负责将服务器的数据响应到客户端。而最后一个参数next是一个方法,因为一个应用中可以使用多个中间件,而要想运行下一个中间件,那么上一个中间件必须运行next()。、

3.接收请求的方法

1.get('/地址',function(req,res){});//只接收get请求

2.post('/地址',function(req,res){});//只接受post请求

3.use('/地址',function(req,res){});//都可以接收

下面为一个例子:

server.get('/',function(){
     console.log ('有GET')
 });

 server.post('/',function(){
     console.log("有POST")
 });

 server.use('/',function(){
     console.log("use了")
 });
 server.listen(8080);

4.具体的步骤

1.创建服务       var server = express();

2.监听              server.listen(8080);

3.处理请求      server.use('/地址‘,function(req,res){});

5.其他需要注意的地方

1.这里使用的req与res是express封装过的,所以和原生的有区别。

2. 它的功能是非破坏式的,保留了原生的功能,添加了一些方法,比如send(可以直接写入json类型)

6.自己实现的一个简单的登陆注册,代码如下:

<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script src="ajax.js" ></script>
        <script type="text/javascript">
            window.onload = function(){
                var oUser = document.getElementById('user');
                var oPass = document.getElementById('pass');
                var oBtn = document.getElementById('btn1');

                oBtn.onclick = function(){
                    ajax({
                        url:'/login',
                        data:{user:oUser.value,pass:oUser.pass},
                        success:function(str){
                            var json = eval('(' + str + ')');
                            if(json.ok){
                                alert("登录成功")
                            }
                            else{
                                alert('失败:' + json.msg);
                            }
                        },
                        error:function(){
                            alert('通信失败');
                        }
                    });
                };
            };
        </script>
    </head>
    <body>
        用户:<input type="text" id="user"><br>
        密码:<input type="password" id="pass"><br>
        <input type="button" value="登录" id="btn1">
    </body>
</html>
//实现简单的登录注册
const express = require('express');
const expressstatic = require('express-static');

var server = express();

server.listen(8080);

//在学习数据库之前,先这样保存数据,但是正常的工作中是不可取的
var users={
    "ddd" : "222222",
    "zhangsan" : "33434343",
    "lisi" : "4444343"
};
server.get('/login',function(req,res){
    var user = req.query['user'];
    var pass = req.query['pass'];

    if(users[user] == null){
        res.send({ok:false,msg:'此用户不存在'});
    }else{
       if(users[user] != pass){
           res.send({ok:false,msg:'密码错误'});

       }
       else{
           res.send({ok:true,msg:'成功'});
       }
    }
});

server.use(expressstatic('./www'));

如有错误,望指正!

 

猜你喜欢

转载自blog.csdn.net/qq_39897978/article/details/84570762