總述
Assets中是服務端想讓外部擷取的的靜态檔案。在Sais中,他們放在assets/目錄下。當你啟動app,或者向assets目錄下新增檔案,或者改變現有的assets,Sails的assets管道啟動并将這些那些檔案同步到一個隐藏目錄(.tem/pubolic)。
這個隐藏目錄實際上就是運作時Sails的服務所在。
靜态中間件
在這個場景之後,Sails用Express的服務靜态中間件來服務assets。可以在http/config.js中配置這個中間件。
index.html
像大多數web伺服器一樣,Sails優先使用index.html。比如,建立了assets/foo.html,就可以通路http://localhost:1337/foo.html。但如果建立了assets/foo/index.html,那就可以通路http://localhost:1337/foo/index.html和http://localhost:1337/foo。
優先級
在Sails的route之後注解靜态中間件十分重要。如果定義了一個route,但在assets目錄中有沖突的路徑,route會在它到靜态中間件之前将其攔截。比如,定義了assets/index.html,在config/routes.js中沒有相關路由,它将作為你的首頁。但如果定義了一個route像’/’: ‘FooController.bar’,這個路徑将會優先使用。