从零用go语言手写web框架nio

        大家好,今天手写了一个精简的web框架nio,主要借鉴了gin框架极简的特点,实现方式却gin用很大差异,nio虽然比较精简,但是麻雀虽小,五脏俱全

        (注:这套框架开发的项目需要有go语言http库的知识和web后端开发的经验和并熟悉相应工作流程)

        首先介绍一个相对成熟的web框架的主要部分,1.请求处理,2.上下文信息,3.路由分块,4.中间件,5.模板渲染 ,6.静态资源渲染,7.异常处理     

        OK,我们现在开始

1.初始化项目结构

 2.完成nio框架的程序初始化

 接下来,我们先完成nio模块里面的nio.go,主要是写一些关于nio框架以后所需要的全局变量template和传递上下文信息的Context结构体,block是用于对请求的路由分块,Init()方法是用于初始化nio框架用的,Run()方法来启动nio框架

3.完成nio框架对客户端请求响应所需的方法

 4.执行路由所有的中间件和当前路由绑定方法

 5.完成客户端不同类型的请求

 

 6.加载模板

 然后我们打开我之前在nio.go文件里注释的loadTemplate()方法

实现api.go文件里的HTML()方法

7.错误处理

 然后我们打开我之前在handle.go文件里注释的loadTemplate()方法

8.nio框架完成

9.nio框架测试

 新建html和image目录,并完成其子目录和子文件的创建,test目录中新建main.go文件(注:html目录和image目录并不属于nio框架的一部分,只是用来测试用的)

 OK,我们已经完成了nio框架的开发,是不是很有意思呢

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

醉墨居士

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值