Categories: Revel 教程

Revel 常见问题

如何将已有的http.Handlers整合到Revel中?

概念图中, http.Handler 用于处理用户的请求。Revel的处理是非常简单的,它只是创建控制器实例,并将请求传递给过滤器链。

应用程序可以通过重写默认的处理程序整合现有http.Handlers:

func installHandlers() {
    var (
        serveMux     = http.NewServeMux()
        revelHandler = revel.Server.Handler
    )
    serveMux.Handle("/",     revelHandler)
    serveMux.Handle("/path", myHandler)
    revel.Server.Handler = serveMux
}

func init() {
    revel.OnAppStart(installHandlers)
}

拦截器、过滤器和模块之间是什么关系?

  1. 模块是可以插入到程序中的包。他们可以在多个Revel程序(或第三方源)中共享控制器、视图、资源和其他代码。

  2. 过滤器是可挂接到请求处理管道的函数。他们一般作为一个整体处理技术在应用程序中使用,来垂直分隔应用程序逻辑。

  3. 拦截器是封装数据和行为一种方便的方式,因为嵌入类型导入它的拦截器和字段。这使得拦截器可以很好的处理一些事情,比如验证登录cookie并保存这些信息到一个字段。拦截器可以应用到一个或多个控制器。
terry

这个人很懒,什么都没有留下~

Share
Published by
terry

Recent Posts

聊聊vue3中的defineProps

在Vue 3中,defineP…

1 周 ago

在 Chrome 中删除、允许和管理 Cookie

您可以选择删除现有 Cooki…

2 周 ago

自定义指令:聊聊vue中的自定义指令应用法则

今天我们来聊聊vue中的自定义…

3 周 ago

聊聊Vue中@click.stop和@click.prevent

一起来学下聊聊Vue中@cli…

4 周 ago

Nginx 基本操作:启动、停止、重启命令。

我们来学习Nginx基础操作:…

1 月 ago

Vue3:手动清理keep-alive组件缓存的方法

Vue3中手动清理keep-a…

1 月 ago