2017-04-16 54 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

你可以把你的项目的要点?如果我能看到你的代码,会更容易帮忙。 –