express框架的简介与使用

xiaoxiao2025-08-08  29

express框架的简介与使用

什么是Express Express是目前流行的基于node.js运行环境的web开发框架,可以快速地搭建一个完整功能的网站。 express框架的使用 1.一套基本操作:引入模块+创建服务器+返回文件+监听端口 var express = require(“C:/Program Files/nodejs/node_modules/express”); //引用node.js中的express模块 var app = express();//等同于 new express(),底层设计 app.use(express.static(__dirname+"/html")); app.listen(8089); //express.static()设置静态路由,括号中的所有文件夹和文件都会变成路由文件,上面的/html也可以是项目的名称,可以提供图片,css,Javascript格式的文件 //app.listen设置访问本程序的端口号 (后端文件与项目文件的目录结构关系

2.响应对象 响应json格式的数据

<button id="btn_json">ajax请求</button> ---------以下为script标签代码----------- $("#btn_json").on("click",function(){ $.get("json.text",function(data){ console.log(data); $("body").append(data.name+":"+data.age); }); }); ------------------以下为后端服务器代码------------------------------------- app.get("/json.text",function(req,res){ res.json({name:"lily",age:18}); })

注意:$.get是jquery_ajax请求数据的方法: $.get(url,data,function(response,status,xhr){…}) url 必需 data (可选)发送到服务器的参数 success(response,status,xhr) 可选。请求成功的回调函数 response 结果数据 status 请求的状态 xhr XMLHttpRequest 对象 响应jsonp格式的数据

<button id="btn_jsonp">jsonp请求</button> ---------------以下为script标签代码--------------------- $("#btn_jsonp").on("click",function(){ $.getJSON("/jsonp.text?cb=?",function(data){ console.log(data); $("body").append(data.user); }) }); --------------------------以下为后端服务器代码------------------------------------ app.get("/jsonp.text",function(req,res){ app.set('jsonp callback name', 'cb'); res.jsonp({ user: 'karen' }); })

重定向

<form action="form_data" method="post"> <input type="submit" value="发送数据"/> </form> ---------------------------- app.get("/index.html",function(req,res){ res.sendFile(__dirname+"/index.html"); }) app.post("/form_data",function(req,res){ res.redirect("/index.html"); })

重定向指向的文件必须经过获取,地址栏端口号后的URI变化的顺序为: 当前页面 xx.html -> form_data -> index.html 发送任何字段

app.get("/index.html",function(req,res){ res.send("skrskrskrskr"); }) ------------------------------- //send用于发送任何一串字符,必须用引号包裹 发送文件 res.sendFile(__dirname+"/index.html"); 终结响应处理流程 app.get("/index.html",function(req,res){ res.end("skrskrskrskr"); }

------------显示结果如下-------------- 设置响应状态码并将其以字符串的形式发送给前端 app.get("/index.html",function(req,res){ res.sendStatus(404); // 以上等价于 res.status(404).send(“Not Found”); }) -----------显示结果如下–http状态码变为404并自动设置了响应头“ Not Found”---------------------

3.post请求

<form action="form_data" method="post"> <input type="submit" value="发送数据"/> </form> ---------------------------------- app.post("/form_data",function(req,res){ res.sendFile(__dirname+"/html/station.html"); })

4.所有请求都适用 app. all ("/index.html",function(req,res){ res.send(‘6666666’); }) ====无论什么请求方式,只要前端请求了/index.html,就返回字段’6666666’ app. all (" * " , function(req,res){ res.send(‘6666666’); }) =====无论前端请求什么,都返回字段’6666666’,如下: 此功能适用于当用户输入地址有误时,给前端用户发送一个特定的错误页面。 注意:all与其他请求方式get、post等优先级相同,一般放在所有其他指定了的请求方式的代码后面。 5.动态路由 app.get("/news/money/:id",function(req,res){ console.log(req.params) ; console.log(req.params.id); }) ----------------------打印结果如下------------ { id: ‘10091.html’ } //对象 10091.html 对应文件目录结构如下: app.get("/news/money/:id",function(req,res){ res.sendFile(__dirname+"/news/money/"+req.params.id); })

转载请注明原文地址: https://www.6miu.com/read-5034477.html

最新回复(0)