zoukankan      html  css  js  c++  java
  • Node: 使用Express搭建Web应用

    一、简介

    在前面我们使用了http这个服务来创建了一个简单的web应用,在nodeJs中提供了一个框架来创建web服务,这个框架就是express。express是node中一种web框架,使用express可以构建一个web服务器,通过这个服务器接受web请求req,和处理web的响应res。

    二、应用

    1、同样地先创建一个node项目

    2、在app.js中创建一个express服务并启动

    //引入express框架
    const express = require('express')
    
    //创建express服务实例
    const app = express();
    
    //接收请求和处理响应
    app.use((req, res) => {
        res.json({
            name: "xiayuanquan",
            age:28
        })
    });
    
    //设置监听
    app.listen(3000, ()=>{
        console.log("server 启动成功!");
    })

    3、打开浏览器访问http://localhost:3000/,  或者使用Postman进行调试请求,分别结果如下。

    三、请求

    在上面使用了express服务的use函数来接收请求和处理响应,发现不论是刷新浏览器还是使用Postmain进行请求,其响应的结果都能获取到。express还可以使用get和post进行指定路径的请求,如下所示:

    //引入express框架
    const express = require('express')
    
    //创建express服务实例
    const app = express();
    
    //get请求: http://127.0.0.1:3000/name
    app.get('/name', (req, res) => {
        res.send('xiayuanquan get');
    });
    
    //post请求: http://127.0.0.1:3000/age
    app.post('/age', (req, res) => {
        res.send('28 post');
    })
    
    //设置监听
    app.listen(3000, ()=>{
        console.log("server 启动成功!");
    })

    使用浏览器访问http://127.0.0.1:3000/name结果如下: 【浏览器默认使用的都是get请求】

    使用Postman的get请求访问http://127.0.0.1:3000/name结果如下: 【如果此时使用Posetman的post请求,无法获取请求结果】

    使用浏览器访问http://127.0.0.1:3000/age结果如下: 【浏览器默认使用的都是get请求,所以请求失败】

    使用Postman的post请求访问http://127.0.0.1:3000/age结果如下: 【如果此时使用Posetman的get请求,无法获取请求结果】

    四、传参

    使用express也支持在请求时,将参数拼接到路径后面进行响应。如下所示:

    //引入express框架
    const express = require('express')
    
    //创建express服务实例
    const app = express();
    
    //get请求: http://127.0.0.1:3000/student1
    //需要在该路径后面拼接上name和age这两个参数,例如:http://127.0.0.1:3000/student1/xiayuanquan/28
    app.get('/student1/:name/:age', (req, res) => {
        //对参数进行析构
        let {name, age} = req.params;
        //将结果响应成json
        res.json({
            name,
            age
        })
    });
    
    //post请求: http://127.0.0.1:3000/student2
    //需要在该路径后面拼接上name和age这两个参数,例如:http://127.0.0.1:3000/student2/zhangsan/30
    app.post('/student2/:name/:age', (req, res) => {
        //对参数进行析构
        let {name, age} = req.params;
        //将结果响应成json
        res.json({
            name,
            age
        })
    })
    
    //设置监听
    app.listen(3000, ()=>{
        console.log("server 启动成功!");
    })

    使用Postman的get请求路径http://127.0.0.1:3000/student1/xiayuanquan/28的结果如下:

    使用Postman的post请求路径http://127.0.0.1:3000/student2/zhangsan/30的结果如下: 

  • 相关阅读:
    [原创]Java在线编辑word文档调用PageOffice实现并发控制
    [原创]Java动态填充word文档并上传到服务器
    mysql数据类型
    mysql 数据增删改查基本语句
    MYSQL中char 与 varchar 的区别
    MYSQL 同时执行多条SQL语句
    关于MyEclipse10编辑JSP卡顿现象
    鼠标悬停放大图片效果
    简单实现 飘浮 广告层特效
    简单实现 特效(董侨JonneyDong)
  • 原文地址:https://www.cnblogs.com/XYQ-208910/p/12115633.html
Copyright © 2011-2022 走看看