2013-06-13 4 views
2

을 제공합니다 : 내 브라우저에서 "/style.css"를 입력하면compojure /의 Clojure GET 노선이 기능은 간단한 유구의 장을 흘리고있다 내 코드입니다 여기에 일반 텍스트 스타일 응답

(defroutes app-routes (GET "/style.css" [] (my-css-function))) 
(defn my-css-function [] "(css strings...)") 

그리고, 그것은 sytanxically 올바른 동안 html 파일에서 사용할 수없는 일반 텍스트 문자열을 밖으로 쏟아져. 나는 compojure가 context type을 망치고있어 브라우저가 내 문자열을 일반적인 CSS 파일이 아닌 이상한 것으로 해석하고 있다고 생각한다. my-css-function

+0

"소스를 볼 때 브라우저에서 무엇을 볼 수 있습니까?" – noahlz

답변

4

어떤 내용 유형을 명시 적으로 지정되지 않은 경우 내 생각이 text/plain 또는 text/html 중 하나가 사용되는 점이다 compojure 응답에 대한 내용으로 반환 된 문자열을 반환합니다. 당신의 응답을 text/css 콘텐츠 형식을 지정하려면

, 당신은 다음과 같은 방법으로 그것을 할 수 :

(defn my-css-function [] 
    {:headers {"Content-Type" "text/css"} 
    :body "body { background-color: #CCC; }"}) 
0

을 다음과 같은 포함하도록 코드를 수정해야합니다

(route/resources "/") ; special route for serving static files like css 
         ; default root directory is resources/public/ 

자세한 내용은 this answer을 확인하십시오.