文件名是:

H4sIAAAAAAAAAIXNQQrCMBCF4XGhXkREhE500QNN41SqlYS86aKeyat5B4mQgJu6$002ffl47$002fWm9ZNotSWiDR2dAGpw8GmIJn4awwTX8plP3LqYggWbo$002fINxMv2p2Z$002fWPba9$002brtK3dFmkSFpbmiErLaF9WN4u$002fdkC6V1ZJd83eteSggV83nHzax7d8QAQAA.js


(每次都使用相同的名称)。

我已经确定Tomcat / Eclipse / Tapestry在启动Web服务器时会生成此js文件。但是,我根本找不到修改该文件的方法。

文件的前几行是:

/* /assets/scriptaculous/5.1.0.5/prototype.js */;
/*  Prototype JavaScript framework, version 1.6.0.3
 *  (c) 2005-2008 Sam Stephenson
 *
 *  Prototype is freely distributable under the terms of an MIT-style license.
 *  For details, see the Prototype web site: http://www.prototypejs.org/
 *
 *--------------------------------------------------------------------------*/


但是,我还确定我们也没有在任何地方安装这个prototype.js文件。

运行Google的PageSpeed时,我看到该文件是239 KB文件,其中140 KB是在初始页面加载期间解析的(可以减少23 KB)。页面加载花费了大部分时间。

有人遇到过这个js文件吗?如果是这样,您如何处理?

最佳答案

Tapestry中的客户端逻辑(验证/ ajax等)建立在prototype.js之上。在Tapestry 5.4(尚未发布)中,这很容易换成jQuery或其他“基础”框架。

Javascript Stacks在Tapestry 5.2中引入,可以将多个javascript文件捆绑为一个文件。

如果您查看核心挂毯jar,您会发现其中包含了prototype.js。 Tapestry能够从类路径中提供js文件,并且根据您正在运行的Tapestry版本,它很可能已将几个核心js文件捆绑在一起。

Tapestry具有一些技巧,因此js文件不会在开发模式下缓存,而会积极地缓存在production mode中。它通过为您的应用程序版本和远期缓存过期响应头生成唯一的文件名来实现。

关于javascript - Tomcat/Eclipse/Tapestry生成了Javascript文件,由于请求量大且解析过多,导致网站运行速度变慢。如何缩小/优化它?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17792083/

10-11 23:23
查看更多