V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
6260628
V2EX  ›  程序员

跟据 url 进行匹配选择相映的处理程序,然后中间可以拦截做一些统一处理,需要用什么设计模式?

  •  
  •   6260628 · 2019-10-15 14:30:30 +08:00 · 1425 次点击
    这是一个创建于 1648 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我有如题这个需求,请教哪位能告诉我用什么设计模式,及相映的模式介绍?有关系类的源码介绍就行,感谢

    8 条回复    2019-10-15 17:00:02 +08:00
    IMCA1024
        1
    IMCA1024  
       2019-10-15 14:35:57 +08:00
    责任链设计模式(过滤器 /拦截器)
    6260628
        2
    6260628  
    OP
       2019-10-15 14:42:58 +08:00
    @IMCA1024 责任链好像是一条线,我是跟据每个 url 有一条链
    leishi1313
        3
    leishi1313  
       2019-10-15 14:51:24 +08:00 via Android
    switch
    xiaotuzi
        4
    xiaotuzi  
       2019-10-15 14:52:10 +08:00 via iPhone
    这要啥设计模式?
    父类继承,公共模块
    一个公共的类作为主控制器,公共类可以进行统计操作等,PHP 里面就是类似__constuct 这个方法,每次调用都会执行,这里面写统计啥的操作。
    子类就是你说的分别进行处理,子类继承公共类,这样每次调用也要经过公共类,子类处理具体实务。
    ragnaroks
        5
    ragnaroks  
       2019-10-15 14:55:28 +08:00
    参考下 dotnet core 的 filter 和 middleware
    airfling
        6
    airfling  
       2019-10-15 14:57:07 +08:00
    spring 就是 aop,或者 controllerAdvice
    lllllliu
        7
    lllllliu  
       2019-10-15 16:11:52 +08:00
    切面,观察者,驱动, 适配器模式好多。
    leoskey
        8
    leoskey  
       2019-10-15 17:00:02 +08:00
    可以参考 express koa 的中间件模型。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5226 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 07:41 · PVG 15:41 · LAX 00:41 · JFK 03:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.