iris使用

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.

页面查看:


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容