node.js 学习 -- koa

简介: 安装 Koa 框架

一、搭建项目


1. 安装 Koa 框架

yarn add koa

2. 引入

const Koa = require("koa");
const app = new Koa();


3. 配置中间件

// ctx 所有http的上下文
// 配置中间件
app.use((ctx, next) => {
  ctx.body = "hello api";
});


4. 监听端口

app.listen(3000, () => {
  console.log("Server on 3000");
});

二、项目基本优化


1. 配置文件

安装 dotenv 包


yarn add dotenv


创建 .env 文件


APP_PORT = 8000


在当前目录下创建 config 文件夹,用来保存配置文件,并添加config.default.js


const dotenv = require("dotenv")
dotenv.config()
// 暴露
module.exports = process.env


改写 主进程内容


// 引包
const Koa = require("koa");
const app = new Koa();
// env
const { APP_PORT } = require("./config/config.default");
// ctx 所有http的上下文
// 配置中间件
app.use((ctx, next) => {
  ctx.body = "hello api";
});
app.listen(APP_PORT, () => {
  console.log("Server on 3000");
});


三、添加路由(处理不同的url请求)


路由:根据不同的 URL,调用对应处理函数


1. 安装 koa-router

yarn add koa-router


koa-router 官方文档


步骤:


导入包

实例化对象

编写路由

注册中间件


2. 导入包


const Router = require("koa-router")


3. 实例化对象


const indexRouter = new Router()


4. 编写路由


indexRouter.get('/',(ctx,next)=>{    ctx.body = "hello index"})


5. 注册中间件

app.use(indexRouter.routes())


这里需要特别注意的是,配置中间件的时候需要调用 routes 方法,不能直接传入对象


app.use(indexRouter) // 错误




会报错


四、处理路由文件


如果我们要将全部的路由文件写在 main.js 文件中,会造成代码的混乱,这一点在 express 中也遇到了,我们可以将路由请求放在一个单独的文件夹中router,分别处理不同场景的路由


1. 引入包

例如我们需要一个专门处理用户路由的文件 user.route.js ,这个文件专门处理用户路由


同时一个很重要的点:我们可以给 Router 构造函数传递一个对象{prefix: "/users"} ,用来配置请求的前缀

const router = new Router({ prefix: "/users" });


这样配置后,当我们请求 /路径时,实际上请求的是 /users/


2. 编写路由

我们在 user.route.js 中编写路由

const Router = require("koa-router");const router = new Router({ prefix: "/users" });router.get("/", (ctx, next) => {  ctx.body = " hello users";});


并暴露出 router

module.exports = router;


3. 改写 main.js

将暴露的 router 引入 main.js 中,引入中间件即可

// 引包const Koa = require("koa");const app = new Koa();// envconst { APP_PORT } = require("./config/config.default"



相关文章
|
5月前
|
JavaScript 前端开发 开发者
VUE 开发——Node.js学习(一)
VUE 开发——Node.js学习(一)
133 2
|
4月前
|
Web App开发 JavaScript 前端开发
如何学习JavaScript?
如何学习JavaScript?
97 5
|
4月前
|
JavaScript 前端开发 索引
JavaScript学习第二章--字符串
本文介绍了JavaScript中的字符串处理,包括普通字符串和模板字符串的使用方法及常见字符串操作方法如`charAt`、`concat`、`endsWith`等,适合前端学习者参考。作者是一位热爱前端技术的大一学生,专注于分享实用的编程技巧。
52 2
|
4月前
|
存储 JavaScript 前端开发
JavaScript学习第一章
本文档介绍了JavaScript的基础知识,包括其在网页中的作用、如何通过JavaScript动态设置HTML元素的CSS属性,以及JavaScript中的变量类型(`var`、`let`、`const`)和数据类型(基本数据类型与引用数据类型)。通过实例代码详细解释了JavaScript的核心概念,适合初学者入门学习。
77 1
|
5月前
|
JavaScript
js学习--制作猜数字
js学习--制作猜数字
58 4
js学习--制作猜数字
|
5月前
|
JavaScript
webpack学习五:webpack的配置文件webpack.config.js分离,分离成开发环境配置文件和生产环境配置文件
这篇文章介绍了如何将webpack的配置文件分离成开发环境和生产环境的配置文件,以提高打包效率。
90 1
webpack学习五:webpack的配置文件webpack.config.js分离,分离成开发环境配置文件和生产环境配置文件
|
4月前
|
JavaScript 中间件 API
Node.js进阶:Koa框架下的RESTful API设计与实现
【10月更文挑战第28天】本文介绍了如何在Koa框架下设计与实现RESTful API。首先概述了Koa框架的特点,接着讲解了RESTful API的设计原则,包括无状态和统一接口。最后,通过一个简单的博客系统示例,详细展示了如何使用Koa和koa-router实现常见的CRUD操作,包括获取、创建、更新和删除文章。
112 4
|
6月前
|
算法 JavaScript 前端开发
第一个算法项目 | JS实现并查集迷宫算法Demo学习
本文是关于使用JavaScript实现并查集迷宫算法的中国象棋demo的学习记录,包括项目运行方法、知识点梳理、代码赏析以及相关CSS样式表文件的介绍。
第一个算法项目 | JS实现并查集迷宫算法Demo学习
|
5月前
|
JavaScript
js学习--制作选项卡
js学习--制作选项卡
54 4
|
5月前
|
JavaScript
js学习--商品列表商品详情
js学习--商品列表商品详情
60 2

热门文章

最新文章