# Iris概览

go-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.2 启动服务

go run example.go
1

启动Iris服务

# 2.3 测试Hello World

在浏览器输入http://localhost:8080

HelloWorld

# 3 更多参考资料

Iris官网

Iris中文文档