如何在web服务器中查找文件是使用javascript更新的

如何在web服务器中查找文件是使用javascript更新的,javascript,ajax,Javascript,Ajax,我需要知道,是否有可能在web服务器中找到使用javascript更新的文件。在我的java应用程序中,如果出现任何错误,我将使用java更新一个文件,例如logger。。通过使用javascript,如果发生任何更新,我需要立即读取该文件,并将其显示在网页中。。。首先我需要知道有没有可能做到这一点???如果是这样的话,你能想出一个办法吗???如果可能,请提供清晰的代码或示例。。。。Thanx提前..否,您不能使用JavaScript读取文件内容。JavaScript驻留在客户端,无法读取服务器

我需要知道,是否有可能在web服务器中找到使用javascript更新的文件。在我的java应用程序中,如果出现任何错误,我将使用java更新一个文件,例如logger。。通过使用javascript,如果发生任何更新,我需要立即读取该文件,并将其显示在网页中。。。首先我需要知道有没有可能做到这一点???如果是这样的话,你能想出一个办法吗???如果可能,请提供清晰的代码或示例。。。。Thanx提前..

,您不能使用JavaScript读取文件内容。JavaScript驻留在客户端,无法读取服务器端文件内容


您可以使用AJAX请求整个文件并获得响应。通过这种方式,您可以请求服务器端页面,从那里获取文件内容,并检查是否有任何修改。然后将显示文件是否已更新的响应传递给客户端。

只要该文件是静态文件并托管在web根目录中,您就可以使用HEAD请求检查文件的日期和时间

但是,因为JavaScript使用客户端的日期和时间,所以您应该记住客户端的任何时区

此时,您必须每n秒轮询一次服务器以检查更新

HEAD请求已在此处处理:

HEAD请求返回如下内容:

HTTP/1.1 200 OK
Server: Microsoft-IIS/4.0
Cache-Control: max-age=172800
Expires: Sat, 06 Apr 2002 11:34:01 GMT
Date: Thu, 04 Apr 2002 11:34:01 GMT
Content-Type: text/html
Accept-Ranges: bytes
Last-Modified: Thu, 14 Mar 2002 12:06:30 GMT
ETag: "0a7ccac50cbc11:1aad"
Content-Length: 52282
HEAD请求的示例如下:

该页面包含您要查找的页面:

xmlhttp.open("HEAD", "/faq/index.html",true);
 xmlhttp.onreadystatechange=function() {
  if (xmlhttp.readyState==4) {
   alert("File was last modified on - "+
    xmlhttp.getResponseHeader("Last-Modified"))
  }
 }
 xmlhttp.send(null)

你需要格式化日期和时间。。。你的想法很好,但我能找到最新更新的数据吗。。。因为我必须单独获取该内容…我概述的是一种方法,用于确定文件是否已更新,然后对其进行操作。。。我无法告诉您文件中的哪些数据已更新,因为您需要考虑文件中的数据存储方式,以便您能够做出这样的确定。例如,您可以在每次写入文件时包含一个时间戳,然后显示最近5分钟内出现的所有行。或者你可以显示最后的X行,这样它就相当于*nix的“tail-f”,你的第一个陈述与你的第二个陈述相矛盾,尽管我理解你的意思。