当前位置:网站首页>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)
边栏推荐
猜你喜欢
(2) Construction of a real-time performance monitoring platform (Grafana+Prometheus+Jmeter)
生成用户的唯一标识(openId),并且加密
【CSDN21天学习挑战赛】第一天,配置环境外加实现mnist手写数字识别
07-JS事件:事件类型、事件对象、事件传播、事件委托
task05 PyTorch可视化
(1) Docker installs Redis in practice (one master, two slaves, three sentinels)
一张图带你解读--如何从零开始学习接口自动化
npm install 时报 npm ERR Cannot read properties of null (reading ‘pickAlgorithm‘)
简单做份西红柿炒蛋778
吃瓜教程task01 第1章 绪论
随机推荐
【转载】CMake 语法 - 详解 CMakeLists.txt
博客帮助文档
05-JS中的BOM和DOM
Some writing skills commonly used in Markdown
做款好喝的茶饮~
全国青少年信息学奥林匹克联赛大纲
08-JS对象、原型及原型链
Flask framework learning: template inheritance
吃瓜教程task02 第3章 线性模型
win下clion打包的.exe文件在无运行环境的电脑运行显示缺失各种.dll
Chapter 5 Loops and Relational Expressions
C language file operation - detailed explanation of data file type, file judgment, and file buffer
第5章 循环和关系表达式
Flask framework to study: the debug and configuration items
Chapter 4-2 a complex type (pointer)
[C language from elementary to advanced] Part 2 Initial C language (2)
03-npm安装包详解,解决npm下载慢的问题,引入nrm等
C语言结构体——位段概念的讲解
Win下安装不同版本的MinGW(g++/gcc)以及对应clion编辑器的配置
第13章 类的继承-1