V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
tomxin7
V2EX  ›  问与答

请教大家一个 URL 中传参的诡异事件

  •  
  •   tomxin7 · 2018-04-26 09:48:05 +08:00 · 2505 次点击
    这是一个创建于 2163 天前的主题,其中的信息可能已经有所发展或是发生改变。

    晚上想把小站:http://workhub.top 接口改为 RESTful 风格,碰到了一件诡异的事情。

    问题接口:用来获取指定省份的就业信息
    http://127.0.0.1:8080/recruit/list/0/7/这里传省份
    

    如果是全国那么就查询全部信息,所有城市都正常,但是“全国”一直 404

    参数是:全国

    image

    参数是:北京

    image

    参数是:全

    image

    测试了一下,和全组合的任何词都不行,后端 debug 也没法获取到,难道是因为“全”这个字的编码问题吗?
    19 条回复    2018-04-26 13:42:24 +08:00
    HENQIGUAI
        1
    HENQIGUAI  
       2018-04-26 10:03:11 +08:00   ❤️ 1
    后台不知是不是用 java,不然你换成问号传参试试
    2123123
        2
    2123123  
       2018-04-26 10:07:45 +08:00   ❤️ 1
    应该是 tomcat 这块的问题,跟后端代码没关系
    jy02201949
        3
    jy02201949  
       2018-04-26 10:31:55 +08:00
    挺有意思的问题,关注看后续
    1010011010
        4
    1010011010  
       2018-04-26 10:45:45 +08:00
    很好奇,暗中观察
    zn
        5
    zn  
       2018-04-26 10:54:51 +08:00 via iPhone
    没代码说个 J8 ?说不定代码里查不到相应信息就直接返回 404 呢?
    tomxin7
        6
    tomxin7  
    OP
       2018-04-26 10:57:11 +08:00
    @zn 后端方法根本没被调用,我上面说了
    tomxin7
        7
    tomxin7  
    OP
       2018-04-26 10:57:45 +08:00
    @2123123 下班打算看看,我也觉得是 tomcat 或者过滤器之类的问题
    tomxin7
        8
    tomxin7  
    OP
       2018-04-26 10:58:25 +08:00
    @HENQIGUAI 问号传参好像就不是 RESTful 风格了,而且我很好奇为什么就这个字不行
    Boyizmen
        9
    Boyizmen  
       2018-04-26 11:49:39 +08:00
    用 Spring Boot 2.0.1,内置 tomcat 8.5.29 测试没有遇到这个问题
    zn
        10
    zn  
       2018-04-26 12:40:51 +08:00 via iPhone
    @tomxin7 没调用那肯定是路由分发问题啊,你的路由代码呢?用的框架是什么,用的什么路由方案,一根毛信息都没有提供,让别人猜?
    tomxin7
        11
    tomxin7  
    OP
       2018-04-26 12:52:21 +08:00
    @zn 冷静冷静
    ETiV
        12
    ETiV  
       2018-04-26 12:57:11 +08:00 via iPhone
    没毛病啊,
    全国没有叫“全国”的省市,返回 404
    tomxin7
        13
    tomxin7  
    OP
       2018-04-26 12:59:02 +08:00
    @ETiV emmm,如果是全国那么就查询全部信息,后端有判断,现在是后端接收不到这个请求
    tomxin7
        14
    tomxin7  
    OP
       2018-04-26 12:59:20 +08:00
    @zn 老哥我自己再研究一下吧,多谢你
    SeanChense
        15
    SeanChense  
       2018-04-26 13:01:51 +08:00
    感觉是编码的问题
    111qqz
        16
    111qqz  
       2018-04-26 13:06:16 +08:00 via Android
    感觉是编码问题+1 ……可能看起来是一个字,但是编码完全不一样。之前遇到过一次
    111qqz
        17
    111qqz  
       2018-04-26 13:07:11 +08:00 via Android
    hoyixi
        18
    hoyixi  
       2018-04-26 13:13:51 +08:00
    @tomxin7 # 13

    你的后端代码也许没收到,但是 tomcat 肯定收到了,不然 404 谁给你的,查查 tomcat 的日志,看看为啥返回了 404
    tomxin7
        19
    tomxin7  
    OP
       2018-04-26 13:42:24 +08:00
    @hoyixi 嗯嗯好,之前没有碰到过 tomcat 层面的错误,感谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4070 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 10:17 · PVG 18:17 · LAX 03:17 · JFK 06:17
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.