重定向自动拼接所有参数

/**
 * 重定向,自动拼接所有参数
 *
 * @param request
 * @param response
 * @param url
 */
public static void redirectUrlWithParams(HttpServletRequest request,
                                         HttpServletResponse response,
                                         String url) {
    try {
        StringBuilder urlWithParams = new StringBuilder(url);
        Enumeration<String> paramNames = request.getParameterNames();
        int i = 0;
        while(paramNames.hasMoreElements()) {
            String paramName = paramNames.nextElement();
            if(i == 0) {
                urlWithParams.append("?");
            } else {
                urlWithParams.append("&");
            }
            urlWithParams.append(paramName).append("=").append(request.getParameter(paramName));
            i++;
        }
        response.sendRedirect(request.getContextPath() + urlWithParams);
        log.debug("redirectUrlWithParams url:{}", urlWithParams);
    } catch (IOException e) {
        e.printStackTrace();
    }
}
 
 

String uri = request.getRequestURI();

HttpHelper.redirectUrlWithParams(request, response, uri);


猜你喜欢

转载自blog.csdn.net/qq_35781178/article/details/80564502