您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何禁用解析作为url参数/从url传递的登录参数

如何禁用解析作为url参数/从url传递的登录参数

这使得Spring在参数和正文中搜索登录数据。我希望禁用在URL中搜索这些参数。

我相信这是不可能的,因为这种行为不是由Spring而不是JavaEE本身实现的。

HttpServletRequest.getParameter文档状态:

以字符串形式返回请求参数的值,如果参数不存在,则返回null。请求参数是与请求一起发送的额外信息。对于HTTP Servlet, 。

但是您可以尝试使用看起来像这样的过滤器来改变它:

public class DisableGetAuthFiler extends OncePerRequestFilter {
    ...

    @Override
    protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException {
        filterChain.doFilter(
                new HttpServletRequestWrapper(request) {
                    @Override
                    public String getParameter(String name) {
                        if (("login".equals(name) && getQueryString().contains("login"))
                                || ("password".equals(name) && getQueryString().contains("password"))) {
                            return null;
                        } else {
                            return super.getParameter(name);
                        }
                    }
                },
                response
        );
    }
}
其他 2022/1/1 18:20:47 有588人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶