Copyright © 2022-2025 aizws.net · 网站版本: v1.2.6·内部版本: v1.25.2·
页面加载耗时 0.00 毫秒·物理内存 151.3MB ·虚拟内存 1437.8MB
欢迎来到 AI 中文社区(简称 AI 中文社),这里是学习交流 AI 人工智能技术的中文社区。 为了更好的体验,本站推荐使用 Chrome 浏览器。
iris 路由可以设置名称是比较简单的,因为我们只需要设置返回的 *Route 实例的 Name 字段即可。
package main
import (
"github.com/kataras/iris"
)
func main() {
app := iris.New()
// 定义一个路由函数
h := func(ctx iris.Context) {
ctx.HTML("<b>Hi</b1>")
}
// 注册路由和命名
home := app.Get("/", h)
home.Name = "home"
// 或者
app.Get("/about", h).Name = "about"
app.Get("/page/{id}", h).Name = "page"
app.Run(iris.Addr(":8080"))
}
当我们为某个路径注册处理器的时候,我们就有能力基于传入 iris 的结构化数据创建 URL。在上面的例子中,如果我们用默认的 html/template 引擎,我们可以用一个简单的动作反转路由(生成实际的URL):
Home: {{ urlpath "home" }}
About: {{ urlpath "about" }}
Page 17: {{ urlpath "page" "17" }}
上面的代码将生成下面的输出:
Home: http://localhost:8080/ About: http://localhost:8080/about Page 17: http://localhost:8080/page/17
我们可以用下面的 方法/函数 处理命名路由(和他们的参数):
更多详细请看 kataras/iris/_examples/view/template_html_...。
当我们在 iris 中讨论中间件的时候,我们就是在讨论运行一个 HTTP 请求处理器前后的代码。例如,日志中间件会把即将到来的请求明细写到日志中,然后在写响应日志详细之前,调用处理期代码。比较酷的是这些中间件是松耦合, ...