扩展Web框架

上一章章介绍了如何开发一个Web框架,通过介绍MVC、路由、日志处理、配置处理完成了一个基本的框架系统,但是一个好的框架需要一些方便的辅助工具来快速的开发Web,那么我们这一章将就如何提供一些快速开发Web的工具进行介绍,第一小节介绍如何处理静态文件,如何利用现有的twitter开源的bootstrap进行快速的开发美观的站点,第二小节介绍如何利用前面介绍的session来进行用户登录处理,第三小节介绍如何方便的输出表单、这些表单如何进行数据验证,如何快速的结合model进行数据的增删改操作,第四小节介绍如何进行一些用户认证,包括http basic认证、http digest认证,第五小节介绍如何利用前面介绍的i18n支持多语言的应用开发。第六小节介绍了如何集成Go的pprof包用于性能调试。

bootstrap,这个我学前端是学过,嘻嘻嘻

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

处理静态资源,前几天刚学过

session处理也是刚学过

表单验证验证也是

认证之前没接触过

用户认证

在开发Web应用过程中,用户认证是开发者经常遇到的问题,用户登录、注册、登出等操作,而一般认证也分为三个方面的认证

  • HTTP Basic和 HTTP Digest认证
  • 第三方集成认证:QQ、微博、豆瓣、OPENID、google、GitHub、facebook和twitter等
  • 自定义的用户登录、注册、登出,一般都是基于session、cookie认证
    beego目前没有针对这三种方式进行任何形式的集成,但是可以充分的利用第三方开源库来实现上面的三种方式的用户认证,不过后续beego会对前面两种认证逐步集成。

利用beego可以实现前面所讲的多语言支持。

pprof支持

Go语言有一个非常棒的设计就是标准库里面带有代码的性能监控工具,在两个地方有包:

net/http/pprof

runtime/pprof
其实net/http/pprof中只是使用runtime/pprof包来进行封装了一下,并在http端口上暴露出来

beego支持pprof
目前beego框架新增了pprof,该特性默认是不开启的,如果你需要测试性能,查看相应的执行goroutine之类的信息,其实Go的默认包"net/http/pprof"已经具有该功能,如果按照Go默认的方式执行Web,默认就可以使用,但是由于beego重新封装了ServHTTP函数,默认的包是无法开启该功能的,所以需要对beego的内部改造支持pprof。

虽然前几天学习了一个goweb小项目,但是没接触到框架这个概念,所以这涉及到用beego实现,对于我来说还是有点....

最后,读完了这本书,不管有没有完全理解(肯定没有),我也算是对整个goweb开发有了一个大致的了解,我把这一篇篇的记录记在博客中是为了告诉我自己,你是学过goweb的,该了解的都了解的到了,没有的只是写代码,去练,去实践,我承认,后端这一块确实比前端难,切身体验,好多概念理解起来,比前端费事,以后学习过程中有什么不懂得,可以优先看一下自己的博客中记录的这本书,这本书好多东西都让我对goweb有了一个新的认识,我觉得我肯定能在这本书中找到答案。

链接

最后是这本书的参考资料(有些已经失效,有些访问不了)

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄