创建服务器
引入express模块 创建服务器时不需要再引入http模块了
const express = require("express");
let app = express();
app.get("/",(req,res)=>{
res.send("<h1 style='color:brown'>使用express搭建服务器成功!</h1>");
})
app.listen(3000);
实现路由案列
const express = require("express");
let app = express();
app.get("/",(req,res)=>{
res.send("<h1 style='color:brown'>使用express搭建服务器成功!</h1>");
})
app.get("/index",(req,res)=>{
res.send("<h1 style='color:brown'>欢迎进入首页</h1>");
})
app.get("/login",(req,res)=>{
res.send("<h1 style='color:brown'>欢迎进入登录页面</h1>");
})
app.post("/register",(req,res)=>{
res.send("<h1 style='color:brown'>注册成功!</h1>");
})
app.listen(3000);
中间件说明
const express = require("express");
let app = express();
app.get("/index",(req,res,next)=>{
console.log("这是第一个index请求");
next();
})
app.get("/index",(req,res,next)=>{
console.log("这是第二个index请求");
res.send("<h1 style='color:brown'>欢迎进入首页</h1>");
})
app.listen(3000);
const express = require("express");
let app = express();
app.use((req, res,next) => {
req.name = "use方法"
next();
});
app.get("/index", (req, res) => {
res.send("req.name");
})
app.listen(3000);
const express = require("express");
let app = express();
app.get("/index",(req,res,next)=>{
res.send("<h1 style='color:brown'>欢迎进入首页</h1>");
})
app.use((req,res,next)=>{
res.send("<h1 style='color:brown'>今晚21:00-24:00网站维护!</h1>");
})
app.listen(3000);
const express = require("express");
const fs = require("fs");
let app = express();
app.get("/index", (req, res, next) => {
fs.readFile("./demo1.html",(err,data)=>{
if (err) {
next(err);
}
res.send("读取成功")
})
})
app.use((err, req, res,next) => {
fs.writeFile("./log.txt",err,(err,data)=>{
if (err) {
console.log("读取失败"+err);
}
})
})
app.listen(3000);
const express = require("express");
let app = express();
app.get("/index",(req,res,next)=>{
res.send("<h1 style='color:brown'>欢迎进入首页</h1>");
})
app.use((req,res)=>{
res.status(404).send("<h1 style='color:brown'>路径不存在</h1>");
})
app.listen(3000);
const express = require("express");
const fs = require("fs");
const path = require("path");
const moment = require("moment")
let app = express();
app.get("/index",(req,res,next)=>{
res.send("<h1 style='color:brown'>欢迎进入首页</h1>");
})
app.get("/readFile",(req,res,next)=>{
fs.readFile("./demo2.js",(err,data)=>{
if (err) {
next(err);
}else{
res.send(data);
}
})
})
app.get("/login",(req,res,next)=>{
try {
const obj = JSON.parse("zhangsan");
res.send(obj);
} catch (error) {
next(error);
}
})
app.use((err,req,res,next)=>{
const err_str =
`
+---------------------------------------+
错误名称:${err.name},\n
错误信息:${err.message},\n
错误时间:${moment(new Date()).format("YYYY-MM-DD hh:mm:ss")}\n
+---------------------------------------+
`
fs.appendFile(path.join(__dirname,"err.log"),err_str,()=>{
res.status(500).send("<h1 style='text-align:center'>服务器内部错误</h1>")
})
})
app.listen(3000,()=>{
console.log("服务器启动成功!");
})