2016-02-22 144 views
0

我使用lein new luminus my-app +postgres +auth +cljs +swagger从luminus应用程序模板创建了一个全新的应用程序。在生成的文件src/clj/my_app/routes/home.clj创建以下的Compojure路线:文件被下载而不是在浏览器中显示

(GET "/docs" [] (response/ok (-> "docs/docs.md" io/resource slurp)))

当我尝试访问localhost:3000/docs该文件只是下载而不是在浏览器中显示。它发生在Chrome和Safari上。

(GET "/hi" [] (response/ok "hi"))

,因为我可以用这条路线也重现行为似与ring.util.http-response/ok

然后下载文件“hi”的文件“hi”。

这是什么原因引发的任何想法?

回答

1

您的响应处理程序未为您的响应主体设置Content-Type

可以使用ring.util.http-response/content-type做到这一点:

(GET "/hi" [] (-> "hi" 
        (response/ok) 
        (response/content-type "text/plain"))) 

你也可以换你的处理程序ring.middleware.content-type/wrap-content-type因此基于从URI文件扩展名的头被“猜中”。

+0

很好用 - 谢谢! – Robert

相关问题