簡體   English   中英

Apache2 帶 xmlhttp

[英]Apache2 with xmlhttp

我有一個 JavaScript function 在其中傳遞服務器端目錄的路徑/名稱,以便將子目錄的路徑/名稱返回到數組。 添加了額外的 console.log() 以檢查流程。

下面的 function 來自這個答案,然后進行了一些調整以滿足需要。

 function loadSubDir(dir) { console.log("Initial method call with ", dir); let res = null; let path = null; let xmlhttp = new XMLHttpRequest(); xmlhttp.open("GET", dir, false); xmlhttp.send(); if (xmlhttp.status == 200) { res = xmlhttp.response; $(res).find(" td > a ").each(function() { path = $(this).attr("href"); console.log("Values for Categories: ", path); subDirs.push(path); }); } subDirs.shift(); return subDirs; }

在我使用默認 Apache 配置的本地 Apache 服務器中,這工作正常,沒有任何問題,只為該 JavaScript 文件可用的目錄添加文檔根目錄。

但是,如果我在另一個 Apache 服務器環境上使用相同的實現,則此FAILS 放置日志后,我注意到在服務器上運行時沒有出現“類別值”日志。

是否需要任何其他配置或可能是什么原因?

謝謝!

問題是我如何實現 $(res).find() 方法。 在我本地的 Apache 服務器環境中,響應是;

<html>
 <head><title>Index of /XXXX-XXX</title></head>
 <body>
  <h1>Index of /XXXX-XXX</h1>
  <table>
   <tr><th valign="top"><img src="/icons/blank.gif" alt="[ICO]"></th><th><a href="?C=N;O=D">Name</a></th><th><a href="?C=M;O=A">Last modified</a></th><th><a href="?C=S;O=A">Size</a></th><th><a href="?C=D;O=A">Description</a></th></tr>
   <tr><th colspan="5"><hr></th></tr>
   <tr><td valign="top"><img src="/icons/back.gif" alt="[PARENTDIR]"></td><td><a href="/">Parent Directory</a></td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
   <tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]"></td><td><a href="XXX/">XXX/</a></td><td align="right">2020-12-14 17:10  </td><td align="right">  - </td><td>&nbsp;</td></tr>
   <tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]"></td><td><a href="XXX/">XXX/</a></td><td align="right">2020-12-15 11:25  </td><td align="right">  - </td><td>&nbsp;</td></tr>
   <tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]"></td><td><a href="XXX/">XXX/</a></td><td align="right">2020-12-15 11:25  </td><td align="right">  - </td><td>&nbsp;</td></tr>
   <tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]"></td><td><a href="XXX/">XXX/</a></td><td align="right">2020-12-14 18:00  </td><td align="right">  - </td><td>&nbsp;</td></tr>
   <tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]"></td><td><a href="XXX/">XXX/</a></td><td align="right">2020-12-14 17:53  </td><td align="right">  - </td><td>&nbsp;</td></tr>
   <tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]"></td><td><a href="XXX/">XXX/</a></td><td align="right">2020-12-15 11:24  </td><td align="right">  - </td><td>&nbsp;</td></tr>
   <tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]"></td><td><a href="XXX/">XXX/</a></td><td align="right">2020-12-14 17:53  </td><td align="right">  - </td><td>&nbsp;</td></tr>
   <tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]"></td><td><a href="XXX/">XXX/</a></td><td align="right">2020-12-14 17:54  </td><td align="right">  - </td><td>&nbsp;</td></tr>
   <tr><th colspan="5"><hr></th></tr></table><address>Apache/2.4.29 (Ubuntu)Server at localhost Port 80</address>
 </body>
</html>

所以.. $(res).find(" td > a ")有效.. 由於我們使用的是 Apache o docker,因此響應是;

<html>
 <head>
  <title>Index of /XXXX-XXX</title>
 </head>
 <body>
  <h1>Index of /XXXX-XXX</h1>
  <ul><li><a href="/"> Parent Directory</a></li>
  <li><a href="XXX/">XXX/</a></li>
  <li><a href="XXX/">XXX/</a></li>
  <li><a href="XXX/">XXX/</a></li>
  <li><a href="XXX/">XXX/</a></li>
  <li><a href="XXX/">XXX/</a></li>
  <li><a href="XXX/">XXX/</a></li>
  <li><a href="XXX/">XXX/</a></li>
  <li><a href="XXX/">XXX/</a></li>
  </ul>
 </body>
</html>

在這里,我需要將 .find() 方法用作$(res).find("li > a")而不是$(res).find("td > a ") 。

然后它繼續執行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM