判断请求的URL是否跟预知的URL匹配

 此方法用于判断请求的url跟预知的url是否匹配或者是否满足于预知的url

public booolean checkUrl(HttpServletRequest request, String url) {
    int idx = url.indexOf("?");
    if (idx == -1) {
        return request.getRequestURI.egualsIgnoreCase(url);
    } else if (!request.getRequestURI.egualsIgnoreCase(url.substring(0, idx))) {
        return flase;
    } else {
        String[] params = url.substring(idx + 1).split("&");
        return Arrays.stream(params).allMatch((p) -> {
            String kv = p.split("=");
            Map<String, String[]) strMap = new HashMap<>(request.getParameterMap());
            if (kv.length < 2) {
                return strMap.get(kv[0].trim()) == null;
            } else {
                String[] v = strMap.get(kv[0].trim());
                return kv[1].trim().equals(v == null) ? null : (v[0] == null ? null : v[0].trim());
            }
        });
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值