当前位置:网站首页>Koa的使用,搭建本地服务器(必会技能)
Koa的使用,搭建本地服务器(必会技能)
2022-08-11 05:17:00 【肖肖冲鸭】
- 新建一个服务器文件夹,和项目的文件夹最好是同级
- 在开发工具中导入(在这是HbuildX)

- 右键打开服务器(wangyiShop_server)的终端命令行,创建包管理文件(package.json),可以手动创建,也可以使用命令如下创建
node init -y
- 安装Koa ,Koa-router
npm install Koa Koa-router
搭建服务器,创建server.js,在服务器根目录下创建server.js文件
创建完的结构如下
现在基本结构搭建完毕,可以手动创建一个简易的服务器了,为了让server.js的结构更加清晰,把路由单独抽离成一个模块,所以需要在服务器根目录下再创建一个管理路由的router文件夹
需要提供给浏览器的数据放在根目录下的data文件夹中
现在的结构如下:
server.js
// 引入依赖包
const Koa=require('koa')
// 引入自定义模块
const router=require('./router/index')
// 1.生成应用实例
const app=new Koa()
// 3.声明使用中间件
app
.use(router.routes()) //声明使用路由
.use(router.allowedMethods()) //声明使用路由的方法
// 4.监听端口号
app.listen('3001',(err)=>{
if(err){
console.log(err)
return
}
console.log('服务器启动成功')
console.log('服务器地址:http://localhost:3001')
})
router–>index.js
const KoaRouter=require('koa-router')
// 2.生成路由器对象
const router=new KoaRouter()
// express:request response next
// koa ctx(request response),next
//测试接口
// router.get('/test',(ctx)=>{
// // 1.获取请求参数
// // 2.处理请求数据
// // 3.返回响应数据
// ctx.body='返回测试数据'
// })
// 注册index主页的接口
const indexData=require('../datas/index.json')
// console.log(indexData,typeof indexData) //Object
router.get('/getTndexData',(ctx)=>{
ctx.body=indexData
})
// 向外暴露路由器对象
module.exports=router
此时浏览器已经可以顺利请求到数据啦
- 优化一
因为服务器代码一改就需要重启服务器,可以使用热加载,安装nodemon,使用nodemon代替node启动(nodemon server.js)
node install nodemon
- 优化二
当别人拿到我们的项目的时候,很有可能不知道如何启动,所以这时,我们需要在package.json文件中配置script项设置默认启动命令(npm start)
"scripts": {
"start": "nodemon server.js"
},

配置完以后,我们可以使用 npm start 启动,这时命令行中会提示默认启动的命令,注:不一定是start,也可以是其他的,只不过使用start可以省略run (npm run start)在这可以使用(npm start)
边栏推荐
猜你喜欢
随机推荐
Flask framework to study: the debug and configuration items
【C语言进阶】第一篇深度剖析整数数据在内存中的存储(一)
Who am I ?
C language file operation - detailed explanation of data file type, file judgment, and file buffer
Flask framework learning: trailing slashes for routes
08-Express路由详解
Chapter 5 Loops and Relational Expressions
c指针学习(2)
【背包】采药题解
第13章 类的继承-1
LeetCode43. String multiplication (this method can be used to multiply large numbers)
leetcode21. Merge two ordered linked lists
博客帮助文档
task03 Pytorch模型定义
【记录】没用知识点 - 智力题
第8章 函数探幽 -1
05-JS中的BOM和DOM
CSDN 社区内容创作规范
Install different versions of MinGW (g++/gcc) and the configuration of the corresponding clion editor under Win
QT Mat转HObject和HObject转Mat 图像视觉处理









