V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
raywong

Gin 的路由问题,路由不匹配

  •  
  •   raywong · Sep 20, 2019 · 5528 views
    This topic created in 2422 days ago, the information mentioned may be changed or developed.

    示例:

    GET /file/in --> loginHandler GET /user/logout --> logoutHandler

    在我第一次退出的时候,确实是执行了 /user/logout 匹配上了路由(清除了 session 后并重定向到了 /user/login )

    在这之后当我又一次点击退出时,执行的却不是 /user/logout 了,而是执行了 /user/login

    在 GitHub 上面看别人提的 issues 也是出现了类似这种路由不匹配的问题,说是 Gin 的一个 Bug。

    有大佬遇到这种问题吗,求助。

    16 replies    2019-09-20 19:02:03 +08:00
    Hanggi
        1
    Hanggi  
       Sep 20, 2019
    你还是好好确认一下,发出去的请求是否都正确。
    huoru
        2
    huoru  
       Sep 20, 2019
    不可能吧,一个这么大的框架出这个问题。
    Carseason
        3
    Carseason  
       Sep 20, 2019
    在前端 /user/logout 链接处增加一个时间戳试试。
    如 /user/logout?t=123456789
    guonaihong
        4
    guonaihong  
       Sep 20, 2019
    有可复现的代码(serve+client)吗?我看下。
    lanjz
        5
    lanjz  
       Sep 20, 2019
    重定向用的 301 ?
    raywong
        6
    raywong  
    OP
       Sep 20, 2019
    @lanjz 用了 307,301 也试过了,跟重定向有关系吗
    lanjz
        7
    lanjz  
       Sep 20, 2019
    @raywong #6 301 是永久重定向
    syrupofplum
        8
    syrupofplum  
       Sep 20, 2019
    没碰到过这种问题,插个眼。
    raywong
        9
    raywong  
    OP
       Sep 20, 2019
    @lanjz 清完缓存又是正常的,不会出现路由问题,但是不能每次都 Disable cache 吧...
    raywong
        10
    raywong  
    OP
       Sep 20, 2019
    @lanjz 看了一下确实是用了 301(没有改回来)。现在改了一下好像可以了。感谢
    raywong
        11
    raywong  
    OP
       Sep 20, 2019
    @Hanggi
    @ChristopherWu
    @Carseason
    @guonaihong
    谢谢大家,问题解决了,是由于我用了 301 重定向导致的。改了一下貌似没问题了
    Pythondr
        12
    Pythondr  
       Sep 20, 2019
    搞什么大新闻
    useben
        13
    useben  
       Sep 20, 2019
    有问题先去 issus 看下
    90928yao
        14
    90928yao  
       Sep 20, 2019
    gin 是用的 httprouter...没这么低级的错误吧
    TypeErrorNone
        15
    TypeErrorNone  
       Sep 20, 2019
    整天就想搞个大新闻
    allgy
        16
    allgy  
       Sep 20, 2019
    httprouter 实现基于 Radix tree,只能精确匹配
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   971 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 52ms · UTC 20:05 · PVG 04:05 · LAX 13:05 · JFK 16:05
    ♥ Do have faith in what you're doing.