跳转至

express中间件的顺序和放行

情景:当输入的一个url可以匹配多个规则时,只会返回第一个规则中的内容,后续的不会执行

需要使用next方法继续往下执行,且函数中不能使用send方法,这样会终止执行

var express = require("express")

var app = express()

app.get("/xiaogang/1001",function (req,res){
    res.send("我是小刚,我的学号是1001")
})

app.get("/:name/:id",function (req,res){
    var name = req.params.name
    var id = req.params.id

    res.send(`我是${name},我的学号是${id}`)
})

app.listen(3000)

NodeJs中的静态化文件夹

var express = require("express")

var app = express()
app.use(express.static("public")) // 将public文件夹静态化,从而允许客户端直接访问该目录下的文件
app.get("/",function (req, res){
})

app.listen(3000)

请求参数的处理

 $("#btn").click(function () {
        $.get("http://127.0.0.1:3000/get_data",{
            name:'小明',
            age:18,
            sex:"男"
        }, function (data){
            console.log(data)
        })
    })


// url.parse方法用于处理URL请求参数,req.url表示的是当前请求地址的参数,true表示的是对url的解析结果,如果为true解析结果的query就是一个json数据,否则就是url的字符串

var express = require("express")
var url = require("url")
var app = express()

app.use(express.static("asset")) // 将其静态化后,若其文件夹下有index.html文件,则会将其自动当做首页进行访问
app.get("/get_data",function (req, res){
    var queryData = url.parse(req.url,true).query // 将入参进行解析(解析为json,获取到入参)
    console.log(queryData)
})

app.listen(3000)