这是我参与「第五届青训营 」伴学笔记创作活动的第 10 天
初识 Go 语言Web框架
二、Iris——目前发展最快的 Go Web框架。
概要及特点介绍
Iris 是基于 Go 语言目前发展最快的一种 Web 框架,提供完整的 MVC 功能并且面向未来,具有高效、设计良好、跨平台属性、小巧、轻量、快,具有强大的功能集,可用于高性能 Web 应用程序和 API,其潜力和可移植性无限;开发者框架从使用层面来看上手轻松,相当于使用 Node.js 与 expressjs 的关系。Iris 支持的 Web 应用程序也可以部署在Serverless工作流上,如在 AWS 和 Netlify 上部署运行。
常用的相关资料网站:
- Iris 官网:
https://iris-go.com/- Iris 源码:
https://github.com/kataras/iris- Iris 中文文档:
https://studyiris.com/doc/
Iris 的安装
安装 Iris 框架前,Go 环境的要求版本至少为1.8。
可以通过命令
go version查看 Go 的版本。
- 安装方式:Go 全局安装或第三方包管理工具。
- 安装命令:
go get -u http://github.com/kataras/iris
安装完成 Iris 后,在 GO_PATH 环境目录中能够找到src/http://github.com/的 Iris 源码说明安装说明。
Iris模板
Iris 框架为开发者提供了自学的实战案例用于参考,在 Iris 框架目录中的_example目录下。
Iris构建服务实例Demo:
在Demo中,通过iris.New()来实例化一个应用服务对象app;通过Run方法开启端口监听服务和运行服务实例。
- Demo:
import "http://github.com/kataras/iris"
func main() {
appInsatnce := iris.New()
appInsatnce.Run(iris.Addr(":8080"), iris.WithoutServerError(iris.ErrServerClosed))
//监听端口8080
}
分析Demo代码,其中iris.New 函返回一个 iris.Application 实例,这种服务实例可通过它的 Configure(...iris.Configurator) 和 Run 方法进行配置。
- 参数1:
appInsatnce.Run方法的第一个参数一般为Host,一般开发者会采用传递一个形如hostname:ip形式的网络地址来开启服务。如通过iris.Addr来完成,它本质上返回的是iris.Runner。 - 参数2:
appInsatnce.Run方法的第二个参数是可选的、可变长的,用于接受一个或者多个iris.Configurator。
iris.Configurator是func(app *iris.Application)类型的函数,可自定义阅读文档和源代码可知,Iris 的配置字段几乎都有一个内建的
iris.Configurator。