1. Iris 框架
Iris以简单而强大的api而闻名。 除了提供的低级访问权限, Iris同样擅长MVC。 它是唯一一个拥有MVC架构模式丰富支持的Go Web框架,性能成本接近于零。
Iris具有以下强大的特性,可以很高效地用于后台开发:
- 专注于高性能
- 简单流畅的API
- 高扩展性
- 强大的路由和中间件生态系统
- 上下文
- 身份验证
- 视图系统.支持五种模板隐隐 完全兼容 html/template
- Websocket库,其API类似于socket.io [如果你愿意,你仍然可以使用你最喜欢的]
- 热重启
2. 安装
go get -u github.com/kataras/iris
也许会报如下错误
......
go: downloading github.com/vmihailenco/tagparser/v2 v2.0.0
github.com/kataras/iris imports
github.com/kataras/iris/context imports
github.com/klauspost/compress/snappy: cannot find module providing package github.com/klauspost/compress/snappy
go: downloading github.com/schollz/closestmatch v1.0.0
go: downloading github.com/aymerick/raymond v1.1.0
说法是被墙了,并且这也是直接安装到了$GOPATH目录下,报错找不到对应的依赖。
可以按如下流程来安装:
2.1 进入项目目录
[root@localhost GOPATH]# cd -
/data/Work/myapp
新建main.go ,内容如下
package main
import "github.com/kataras/iris"
func main() {
app := iris.New()
app.RegisterView(iris.HTML("./views", ".html"))
app.Get("/", func(ctx iris.Context) {
ctx.ViewData("message", "Hello world!")
ctx.View("hello.html")
})
app.Run(iris.Addr(":8080"))
}
新建views文件夹,在views中新建hello.html,内容如下
<html>
<head>
<title>Hello Page</title>
</head>
<body>
<h1>{{.message}}</h1>
</body>
</html>
此时文件列表如下:
[root@localhost myapp]# ll
total 1
-rwxrwxrwx 1 vagrant vagrant 304 Aug 4 22:51 main.go
drwxrwxrwx 1 vagrant vagrant 0 Aug 4 22:46 views
[root@localhost myapp]#
2.2 使用 go mod
我们在我们代码所在的目录下执行 go mod init projectName.go
[root@localhost myapp]# go mod init myapp.go
go: creating new go.mod: module myapp.go
go: to add module requirements and sums:
go mod tidy
2.3 执行一下go run main.go,会有提示下载相应包。如果已下载,则会跳此步骤
[root@localhost myapp]# go run main.go
main.go:3:8: no required module provides package github.com/kataras/iris/v12; to add it:
go get github.com/kataras/iris/v12
2.4 安装iris
注意,如果执行
go get github.com/kataras/iris/v12
,后续会报:
You have installed an invalid version. Install with: go get -u github.com/kataras/iris/v12@latest
提示版本无效,让你重装,所以为了一步到位,直接执行 -u 的命令
[root@localhost myapp]# go get -u github.com/kataras/iris/v12
go: downloading github.com/kataras/iris/v12 v12.1.8
go: downloading github.com/kataras/iris v0.0.2
......
go: downloading github.com/aymerick/douceur v0.2.0
go: downloading github.com/gorilla/css v1.0.0
go: downloading github.com/schollz/closestmatch v1.0.0
go: downloading github.com/aymerick/raymond v1.1.0
go get: added github.com/BurntSushi/toml v0.4.0
go get: added github.com/CloudyKit/jet/v3 v3.0.1
......
go get: added gopkg.in/ini.v1 v1.62.0
go get: added gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b
2.5 启动
[root@localhost myapp]# go run main.go
Now listening on: http://localhost:8080
Application started. Press CTRL+C to shut down.
页面查看:
网友评论