从浏览器中检查Liferay版本

时间:2013-10-15 11:54:48

标签: javascript jquery liferay liferay-6

有没有办法从浏览器通过Javascript / jQuery或源代码找出服务器上部署的Liferay版本?

我看过Liferay的Javascript API。它包含许多有用的方法。

Liferay Javascript API Liferay Javascript API Liferay Javascript API

我可以使用API​​中的方法找出正在运行的加载页面的Liferay版本吗?

编辑: 或者还有其他方法,比如从客户端检查加载的资源(js / images / css / source / theme)名称,以确认门户网站是否在特定的liferay版本上运行?欢迎任何粗略的建议。

2 个答案:

答案 0 :(得分:7)

一些粗略的建议:

  1. 您可以在控制面板中查看服务器管理页面。

  2. 深入了解该页面的源代码,我发现静态Java类com.liferay.portal.kernel.util.ReleaseInfo包含有关liferay版本的所有信息。

  3. 据我所知,这些信息在公共客户端不易访问,但您可以这样做,例如在JSP中插入以下内容:

      <aui:script>
          Liferay.version = "<%=HtmlUtil.escapeJS(com.liferay.portal.kernel.util.ReleaseInfo.getReleaseInfo()) %>"
      </aui:script>
    

    修改 Liferay确实在其静态资源URL中包含构建号作为参数b。例如,在liferay.com主页的以下摘录中:

    <link href="[...]/main.css?[...]b=6120&amp;t=1382040996000" rel="stylesheet" type="text/css" />
    

    参数b = 6120给出门户网站的内部版本号。它在PortalImpl.java中设置:

    @Override
    public String getStaticResourceURL(
        HttpServletRequest request, String uri, String queryString,
        long timestamp) {
    
          [...]
    
        // Build number
    
        sb.append("&b=");
        sb.append(ReleaseInfo.getBuildNumber());
    
          [...]
    

    希望这有帮助,

    阿兰

答案 1 :(得分:1)

使用现代浏览器检查响应标头,您可能会看到如下标题:

Liferay-Portal:Liferay DXP数字企业...... / Build 7010/2016年6月15日)

希望它有用