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

比分网站建设今日百度小说排行榜风云榜

比分网站建设,今日百度小说排行榜风云榜,建设一个网站价格,免费咨询律师微信公众号阶段目标: 掌握Koa的高级功能,能够构建一个功能较为完整的Web应用。 学习内容: 路由管理:学习如何使用koa-router中间件来管理路由,实现不同路径的请求处理。 模板引擎:了解如何使用模板引擎(如…

阶段目标

掌握Koa的高级功能,能够构建一个功能较为完整的Web应用。

学习内容:

  1. 路由管理:学习如何使用koa-router中间件来管理路由,实现不同路径的请求处理。

  2. 模板引擎:了解如何使用模板引擎(如ejspug)来渲染HTML页面。

  3. 静态文件服务:学习如何使用koa-static中间件来提供静态文件服务。

  4. 错误处理:掌握如何在Koa中处理错误,包括全局错误捕获和中间件中的错误处理。

  5. 数据库集成:学习如何在Koa中集成数据库(如MySQLB),并实现基本的CRUD操作。(用sequelize+mysql实现)

第二阶段分为上中下篇,本篇文章是上篇,介绍第1-2点内容,中篇介绍第3-4的内容,下篇介绍第5的内容:数据库集成。

一、路由管理

在Koa中,路由管理通常使用koa-router中间件来实现。koa-router是一个强大的路由管理工具,支持RESTful API和页面路由。

 1、安装koa-router

npm install koa-router

2、 代码示范

const Koa = require('koa');
const Router = require('koa-router');
const bodyParser = require('koa-bodyparser'); // 导入koa-bodyparser
const { name } = require('ejs');const app = new Koa();
const router = new Router();// 使用bodyParser中间件解析请求体
app.use(bodyParser());// 定义路由
router.get('/', async (ctx) => {ctx.body = 'Welcome to the home page!';
});router.get('/about', async (ctx) => {ctx.body = 'This is the about page.';
});router.post('/submit', async (ctx) => {const data = ctx.request.body; // 获取请求体数据console.log("获得请求体数据>>>>",data);//   ctx.body = `Received data: ${JSON.stringify(data)}`;ctx.body = data;
});// 新增http方法
let obj={name:'zhangsan',age:18
}
router.put('/update', async (ctx) => {const data = ctx.request.body;console.log("获得请求体数据>>>>",data);
//   比如将obj的name和age更新为请求体的name和ageobj.name=data.name;obj.age=data.agectx.body = obj;
});
// 使用路由中间件
app.use(router.routes()).use(router.allowedMethods());app.listen(3000, () => {console.log('Server is running at http://localhost:3000');
});

3、测试

3.1、 访问初始化页面

3.2、访问about页面

3.3、用api工具测试post和put请求

测试post请求

点击发送后,在终端查看打印结果

 

 测试put请求

比如这里我定义了一个obj对象,我在发送put请求的时候,将obj两个属性的值进行修改,然后返回给前端。

点击发送

注意:本篇暂时不介绍delete方法,后续介绍”数据库集成” 的时候会演示delete方法。

二、模板引擎

Koa支持多种模板引擎,如ejspug等。这里我们以ejs为例。

 1、安装ejs和koa-ejs

npm install ejs koa-ejs

2、代码示范

2.1、demo2.js

const Koa = require('koa');
const ejs = require('koa-ejs');
const Router = require('koa-router');const app = new Koa();
const router = new Router();// 配置ejs模板引擎
ejs(app, {root: __dirname + '/views', // 模板文件夹路径layout: false, // 是否使用布局文件viewExt: 'html', // 模板文件扩展名cache: false, // 是否缓存模板debug: false // 是否开启调试模式
});// 定义路由
router.get('/', async (ctx) => {await ctx.render('index', { title: 'Home Page' });
});router.get('/about', async (ctx) => {await ctx.render('about', { title: 'About Page' });
});// 使用路由中间件
app.use(router.routes()).use(router.allowedMethods());app.listen(3000, () => {console.log('Server is running at http://localhost:3000');
});

2.2、在views文件夹中创建两个模板文件

PS:注意文件的目录以及位置

 

这里为了方便演示,就不涉及复杂的html代码

index.html

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title><%= title %></title>
</head><body><h1>Welcome to the <%= title %></h1>
</body></html>

about.html

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title><%= title %></title>
</head><body><h1>This is the <%= title %></h1>
</body></html>

3、测试

启动服务器 node demo2.js

注意:尽可能将不同代码示范写在不同文件下。

  • 比如路由管理的代码示范,我就写在state2/demo1.js
  • 模版引擎的代码示范,我就写在state2/demo2.js
  • 模板引擎用到的view文件夹以及views/index.html和views/about.html。

知道自己的代码写在什么位置,启动服务器的时候就不会混淆。

  • 访问http://localhost:3000/,渲染index.html模板,显示Welcome to the Home Page

  • 访问http://localhost:3000/about,渲染about.html模板,显示This is the About Page

 

大家可以尝试给模板引擎加点html代码和css样式,展示效果就会更好看一点。

四、小结

这篇文章介绍了koa专栏第二阶段的“路由管理”和“模板引擎”,文章的代码示范就是起到一个“抛砖引玉”的作用,大家可以根据自己的需求进行补充修改。

接下来的中篇,我们即将介绍第二阶段的第3-4的内容,敬请期待吧~

关注我,及时了解最新文章消息。

http://www.dtcms.com/wzjs/31971.html

相关文章:

  • 花瓣网设计网站网页百度
  • 湖南网站建设推荐推广自己产品的文案
  • 太平洋手机报价大全长沙网站优化指导
  • 有没有做企业网站的种子搜索
  • 政府网站的用途朋友圈软文
  • 番禺做网站平台seo人工智能
  • 资讯类网站建设方案书百度竞价官网
  • 徐州新沂网站建设嵌入式培训机构哪家好
  • 畔游网站建设湖南最新消息今天
  • 迪庆州建设局网站苏州关键词优化软件
  • 公司级别网站开发seo系统培训
  • 深圳中装建设集团seo日常工作
  • 网站域名注册规则深圳网络推广哪家公司好
  • 中文域名网站百度产品优化排名软件
  • 完备的常州网站优化怎么建网站免费的
  • 网站所用的图片大小企业网站建设原则是
  • 怎么在网站里做关键词优化种子库
  • 做试管婴儿的网站百度上怎么免费开店
  • 易烊千玺个人网站入口网店seo名词解释
  • 什么网站能接单做网站怎么做seo信息优化
  • qq可以做公司免费网站宣传推广图片
  • phpcms网站seo怎么做百度怎么免费推广自己的产品
  • 外贸公司应该怎样做外贸网站国内ip地址 免费
  • 设计专业网站公司怎么建立网站
  • 做论坛推广的网站国家免费培训学校
  • 从用户需求看b2b网站的营销策略键词优化排名
  • seo 调用其他网站图片查权重
  • 日照网站制作富阳网站seo价格
  • 网站设计框架图在线工具
  • 网站主机的选择与优化全球搜怎么样