2017-06-21 102 views
0

我爲我的compojure應用程序設置了靜態資源。我需要使用wrap-file而不是wrap-resource,因爲我需要從文件系統提供靜態文件。通過特定路線包裝文件

我跟着這個wiki和配置wrap-file

現在我能夠從http:\\localhost\static-file.css

我想要做的就是爲我的靜態資產在特定的情況下爲我的靜態資產http:\\localhost\context\static-file.css

回答

2

有了Compojure路由,重要的是要記住,任何路由都可以封裝在中間件中,而不僅僅是頂級集合的路由。考慮到這一點,我們可以使用Compojure的context在需要的地方安裝文件系統路由。

(defroutes app-routes 
    (GET "/" [] "Hello World") 
    (context "/context" [] 
      (-> (route/not-found "File Not Found") 
       (wrap-file "path-to/static-files"))) 
    (route/not-found "Not Found")) 

(def app 
    (-> app-routes 
     (wrap-defaults site-defaults))) 
+0

太好了。謝謝。這工作 – prasann