# Iris概览
介绍
Iris 是基于Go编写的一个快速,简单但功能齐全且非常高效的Web框架。它为您的下一个网站或 API 提供了一个非常富有表现力且易于使用的基础,可以很高效地用于后台开发。 Iris具有以下强大的特性:
- 专注于高性能
- 健壮的静态路由支持和通配符子域名支持
- 视图系统支持超过5以上模板,完全兼容 html/template
- 支持定制事件的高可扩展性Websocket API,其API类似于socket.io
- 带有GC, 内存 & redis 提供支持的会话
- 强大的中间件和插件生态系统
- 完整 REST API
- 能定制 HTTP 错误
- 源码改变后自动加载(热重启)
# 1 安装
注意:假设您已经安装了Google Go。如果没有,请遵循安装指南
go get -u github.com/kataras/iris
1
# 2 快速入门
# 2.1 第一个web程序
新建一个example.go文件,代码内容如下
package main
import (
"github.com/kataras/iris/v12"
)
func main() {
//创建一个app结构体指针对象
app := iris.New()
//输出html
// 请求方式: GET
// 访问地址: http://localhost:8080/
app.Handle("GET", "/", func(ctx iris.Context) {
// ctx.HTML返回一个html页面,
ctx.HTML("<h1>Hello World!!</h1>")
})
//输出字符串
// 类似于 app.Handle("GET", "/ping", [...])
// 请求方式: GET
// 请求地址: http://localhost:8080/ping
app.Get("/ping", func(ctx iris.Context) {
// ctx.WriteString将向请求方返回一个字符串
ctx.WriteString("pong")
})
//输出json
// 请求方式: GET
// 请求地址: http://localhost:8080/hello
app.Get("/hello", func(ctx iris.Context) {
// ctx表示返回的结果,ctx.JSON即为返回一个json字符串
ctx.JSON(iris.Map{"message": "Hello Iris!"})
})
//8080 监听端口 ,如果未发现服务则返回系统自定义的错误
app.Run(iris.Addr(":8080"), iris.WithoutServerError(iris.ErrServerClosed))
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# 2.2 启动服务
go run example.go
1
# 2.3 测试Hello World
在浏览器输入http://localhost:8080