gpt4 book ai didi

java - 我如何处理//tomcat中的URI前缀?

转载 作者:行者123 更新时间:2023-11-28 23:46:30 25 4
gpt4 key购买 nike

我正在运行一个 tomcat 服务器,它具有映射到/xxx/* 的过滤器(和一个 servlet)我有客户端在 HTTP header 处发送//xxx/* 作为 uri。结果,servlet 和过滤器没有被调用。我试过在/* 处放置一个过滤器来捕获请求,用 requestWrapper 包装它并覆盖 getURI() 和 getServletPath() 方法(它们只返回带有单个/的 URI 给调用者)这似乎不起作用,所以我假设一旦 tomcat 收到请求,它会决定在将它发送到第一个过滤器之前,应该根据这个 uri 评估哪个 servlet/过滤器。有办法解决这个问题吗?我可以让 tomcat 在每个过滤器之后重新评估吗?还有别的办法吗?

提前致谢

最佳答案

如果请求 header 中的 URL 不符合规范,则 Tomcat 丢弃它们是正确的做法。

如果这是问题所在,您需要修复客户端,以便将正确的绝对 URL 放入 HTTP 请求中。

“入侵”Tomcat 使其接受垃圾请求是个坏主意。它将限制您升级平台和/或在不同网络环境中部署的选项。

关于java - 我如何处理//tomcat中的URI前缀?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13594994/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com