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)