当前位置: 首页 > news >正文

西安在线网站兰州高端网站建设

西安在线网站,兰州高端网站建设,企业类网站源码,电子商务网站开发的基本原则?目录 八、express框架 8.1、express介绍 8.2、express使用 express下载 express初体验 8.3、express路由 什么是路由#xff1f; 路由的使用 获取请求参数 获取路由参数 8.4、express响应设置 8.5、express中间件 什么是中间件#xff1f; 中间件的作用 中间件…目录 八、express框架 8.1、express介绍 8.2、express使用 express下载 express初体验 8.3、express路由 什么是路由 路由的使用 获取请求参数 获取路由参数 8.4、express响应设置 8.5、express中间件 什么是中间件 中间件的作用 中间件的类型 定义全局中间件 多个全局中间件 定义路由中间件 静态资源中间件 获取请求体数据 body-parser 8.6、Router 什么是Router Router使用 8.7、EJS 模板引擎 什么是模板引擎 什么是EJS EJS初体验 EJS常用语法 八、express框架 8.1、express介绍 express 是一个基于 Node.js 平台的极简、灵活的 WEB 应用开发框架官方网址https://www.expressjs.com.cn/ 简单来说express 是一个封装好的工具包封装了很多功能便于我们开发 WEB 应用HTTP 服务 8.2、express使用 express下载 express 本身是一个 npm 包所以可以通过 npm 安装 npm init npm i express express初体验 // 1、导入express const express require(express);// 2、创建应用对象 const app express();// 3、创建路由 app.get(/home, (req, res) {res.end(Hello express); });// 4、监听端口启动服务 app.listen(3000, () {console.log(服务已经启动端口 3000 正在监听中...); });直接node命令执行浏览器地址栏访问http://localhost:3000/home 8.3、express路由 什么是路由 官方定义 路由确定了应用程序如何响应客户端对特定端点的请求 路由的使用 一个路由的组成有 请求方法 路径 和 回调函数 组成 express 中提供了一系列方法可以很方便的使用路由使用格式如下 app.method(pathcallback) 代码示例 // 1、导入express const express require(express);// 2、创建应用对象 const app express();// 创建 get 路由 app.get(/home, (req, res) {res.send(网站首页); });// 首页路由 app.get(/, (req,res) {res.send(我才是真正的首页); });// 创建 post 路由 app.post(/login, (req, res) {res.send(登录成功); });// 匹配所有的请求方法 app.all(/search, (req, res) {res.send(1 秒钟为您找到相关结果约 100,000,000 个); });// 自定义 404 路由 app.all(*, (req, res) {res.send(h1404 Not Found/h1) });// 4、监听端口启动服务 app.listen(3000, () {console.log(服务已经启动端口 3000 正在监听中...); });获取请求参数 express 框架封装了一些 API 来方便获取请求报文中的数据并且兼容原生 HTTP 模块的获取方式 // 1、导入express const express require(express);// 2、创建应用对象 const app express();//获取请求的路由规则 app.get(/request, (req, res) {//1. 获取报文的方式与原生 HTTP 获取方式是兼容的console.log(req.method);console.log(req.url);console.log(req.httpVersion);console.log(req.headers);//2. express 独有的获取报文的方式//获取查询字符串问号传参console.log(req.query); // 『相对重要』// 获取指定的请求头console.log(req.get(host));res.send(请求报文的获取); });// 4、监听端口启动服务 app.listen(3000, () {console.log(服务已经启动端口 3000 正在监听中...); });获取路由参数 路由参数指的是 URL 路径中的参数数据 app.get(/:id.html, (req, res) {res.send(商品详情, 商品 id 为 req.params.id); }); 8.4、express响应设置 express 框架封装了一些 API 来方便给客户端响应数据并且兼容原生 HTTP 模块的获取方式 // 1、导入express const express require(express);// 2、创建应用对象 const app express();//获取请求的路由规则 app.get(/response, (req, res) {//1. express 中设置响应的方式兼容 HTTP 模块的方式res.statusCode 404;res.statusMessage xxx;res.setHeader(abc,xyz);res.write(响应体);res.end(xxx);//2. express 的响应方法res.status(500); //设置响应状态码res.set(xxx,yyy);//设置响应头res.send(中文响应不乱码);//设置响应体//连贯操作res.status(404).set(xxx,yyy).send(你好朋友)//3. 其他响应res.redirect(http://atguigu.com)//重定向res.download(./package.json);//下载响应res.json();//响应 JSONres.sendFile(__dirname /home.html) //响应文件内容 });// 4、监听端口启动服务 app.listen(3000, () {console.log(服务已经启动端口 3000 正在监听中...); });8.5、express中间件 什么是中间件 中间件Middleware本质是一个回调函数 中间件函数 可以像路由回调一样访问 请求对象request 响应对象response 中间件的作用 中间件的作用 就是 使用函数封装公共操作简化代码 中间件的类型 全局中间件路由中间件 定义全局中间件 每一个请求 到达服务端之后 都会执行全局中间件函数 声明中间件函数 // 声明中间件函数 let recordMiddleware function(request,response,next){//实现功能代码//.....//执行next函数(当如果希望执行完中间件函数之后仍然继续执行路由中的回调函数必须调用next)next(); } 应用中间件 app.use(recordMiddleware); 声明时可以直接将匿名函数传递给 use app.use(function (request, response, next) {console.log(定义第一个中间件);next(); }) 多个全局中间件 express 允许使用 app.use() 定义多个全局中间件 app.use(function (request, response, next) {console.log(定义第一个中间件);next(); }) app.use(function (request, response, next) {console.log(定义第二个中间件);next(); }) 定义路由中间件 如果 只需要对某一些路由进行功能封装 则就需要路由中间件 调用格式如下 app.get(/路径,中间件函数,(request,response){});app.get(/路径,中间件函数1,中间件函数2,(request,response){}); 静态资源中间件 express 内置处理静态资源的中间件 // 引入express框架 const express require(express); // 创建服务对象 const app express();// 静态资源中间件的设置将当前文件夹下的public目录作为网站的根目录 app.use(express.static(./public)); //当然这个目录中都是一些静态资源 // 如果访问的内容经常变化还是需要设置路由 // 但是在这里有一个问题如果public目录下有index.html文件单独也有index.html的路由 // 则谁书写在前优先执行谁 app.get(/index.html,(request,response){respsonse.send(首页); });// 监听端口 app.listen(3000,(){console.log(3000 端口启动....); });注意事项: index.html 文件为默认打开的资源如果静态资源与路由规则同时匹配谁先匹配谁就响应按代码顺序来路由响应动态资源静态资源中间件响应静态资源 获取请求体数据 body-parser express 可以使用 body-parser 包处理请求体 第一步安装 npm i body-parser 第二步导入 body-parser 包 const bodyParser require(body-parser); 第三步获取中间件函数 //处理 querystring 格式的请求体 let urlParser bodyParser.urlencoded({extended:false})); //处理 JSON 格式的请求体 let jsonParser bodyParser.json(); 第四步设置路由中间件然后使用 request.body 来获取请求体数据 app.post(/login, urlParser, (request,response){//获取请求体数据//console.log(request.body);//用户名console.log(request.body.username);//密码console.log(request.body.userpass);response.send(获取请求体数据); }); 获取到的请求体数据 [Object: null prototype] { username: admin, userpass: 123456 } 8.6、Router 什么是Router express 中的 Router 是一个完整的中间件和路由系统可以看做是一个小型的 app 对象。 Router使用 创建独立的 JS 文件homeRouter.js // 1. 导入 express const express require(express); // 2. 创建路由器对象 const router express.Router(); // 3. 在 router 对象身上添加路由 router.get(/, (req, res) {res.send(首页); }) router.get(/cart, (req, res) {res.send(购物车); }); // 4. 暴露 module.exports router;主文件 const express require(express); const app express(); // 5.引入子路由文件 const homeRouter require(./routes/homeRouter); // 6.设置和使用中间件 app.use(homeRouter); app.listen(3000,(){console.log(3000 端口启动....); })8.7、EJS 模板引擎 什么是模板引擎 模板引擎是分离 用户界面和业务数据 的一种技术。 什么是EJS EJS 是一个高效的 Javascript 的模板引擎 官网: https://ejs.co/ 中文站https://ejs.bootcss.com/ EJS初体验 下载安装EJS npm i ejs --save 代码示例 //1.引入ejs const ejs require(ejs); //2.定义数据 let person [张三,李四,王二麻子]; //3.ejs解析模板返回结构 //% % 是ejs解析内容的标记作用是输出当前表达式的执行结构 let html ejs.render(‘% person.join(,) %’, {person:person}); //4.输出结果 console.log(html); EJS常用语法 执行JS代码 % code % 输出转义的数据到模板上 % code % 输出非转义的数据到模板上 %- code %
http://www.hkea.cn/news/14314698/

相关文章:

  • 自己做配图的网站大连设计网站公司
  • 注册公司有什么风险吗seo关键词优化公司
  • 深圳建设银行分行网站信主网站
  • 厦门网站建设代理做网站人员有什么名称
  • 网站开发需求单优秀建筑方案设计文本
  • 网站开发聊天室电脑做服务器上传网站
  • 企业网站开发询问薇房地产宣传软文
  • 北京做手机网站的公司深圳什么公司做网站好
  • 国内响应式网站模板wordpress交易排行榜
  • 企业网站管理系统设计报告wordpress修改自己的头像
  • 西安优化网站公司网站后台制作这么做
  • 国内漂亮的企业网站第十八届杭州动漫展
  • 最好的网站制作公司cn体育门户网站源码
  • jsp做网站实例上海网站建设找思创
  • 石家庄网站建设seo深圳产品设计师
  • 能做SEO优化的网站建设西宁做手机网站的公司
  • 网站登录入口网页用自己的电脑做主机建网站
  • 网站上实用的h5特效销售管理系统免费版
  • 任经理++徐州网站建设app推广是什么工作
  • 写一个网站需要什么技术凡科网站代码如何修改
  • 网站上做的广告有哪些种ug.wordpress
  • 济宁个人网站建设价格便宜网站开发 硬件环境
  • 在安阳想建个网站怎么做志鸿优化设计答案
  • 做网站的公司哪家怎么吧自己电脑做网站
  • ps兼职做网站如何建单位网站
  • 珠海做网站及推广往公众号里放网站怎么做
  • 企业网站建设湖南岚鸿WordPress推送至QQ
  • 优秀的网站开发网站建设方案总结
  • 百中搜网站建设建设网游小说
  • 做网站公司哪家公司好微信开发者平台工具