在jsp中获取没有www的域名的最优雅方式

时间:2013-04-30 15:41:47

标签: jsp google-analytics

我目前正在使用以下网址向GA发送域名:

_gaq.push(['_setDomainName', '${esapi:encodeForJavaScript(request.serverName)}']);

输出:www.somedomain.com

jsp中删除www.的最优雅解决方案是什么,只留下somedomain.com

2 个答案:

答案 0 :(得分:3)

    URI uri = new URI(url);
    String domain = uri.getHost();
    return domain.startsWith("www.") ? domain.substring(4) : domain;

答案 1 :(得分:0)

当请求实现HttpServletRequest时,您可以通过调用request.getRequestURI()来直接访问URI,以便与Get domain name from given url answer结合使用。

另外,请务必查看HttpServletRequest上的javadoc,以找出其他有趣的方法,例如getServerName


关于如何在JSP中获取所需内容的问题,而不是在servlet / scriptlet中,您需要使用JSTL fn:replace函数,如下所示:

<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>

${fn:replace(request.serverName, 'www.','')}