2017-04-16 77 views
0

所以,如果我得到「/家」,並說我會服務器home.html。我想指定從哪裏獲取我包含在home.html文件中的所有資源。所以,如果我有一個文件系統,這樣如何指定GET協議可以從哪裏獲取資源?

-public 
    -home.html 
    -home 
    -src 

和我保持所有內部SRC資源home.html的使用。然後當我GET/home我不希望路線進入主文件夾,並嘗試提供文件在那裏將導致404。如果我在源文件中的src home.html中的js文件,我服務home.html當我GET/home時,我希望路由保持在公共狀態,然後轉到src/file.js併爲它提供服務而不是/home/src/file.js。如果這是不可能的,有人可以告訴我如何更好地構建文件,以便我可以輕鬆地按需要提供文件。

回答

0

如果home.html的你有

<script src="src/file.js"></script> 

當快遞服務的home.html的頁面,它會尋找公共/ src目錄/ file.js如果公用文件夾已被設置爲服務於靜態文件您的快速應用。

您可以通過添加以下到您的app.js做到這一點:

const path = require("path"); 

app.use(express.static(path.join(__dirname, "public"))); 

這是假設你的目錄結構爲:

-root 
    -public 
     -home.html 
     -home 
     -src 
    app.js 
+0

我剛纔同樣的事情,但是當我源home.html中的file.js就像它試圖在localhost/home/src/file.js而不是localhost/src/file.js中查找它,這是我在公共內部創建主文件夾之前的工作原理。 –

+0

你可以把你的項目的要點?如果我能看到你的代碼,會更容易幫忙。 –