首页 > 解决方案 > 即使服务器正在为资产文件提供服务,也不会加载资产文件

问题描述

我已经设置了一个最小的 Web 服务器,compojure如下所示:

(defroutes m-routes
           (GET "/index.html" []
             {:status 200
              :headers {"Content-Type" "text/html"}
              :body (slurp "resources/index.html")})
           (GET "/style.css" []
             {:status 200
              :headers {"Content-Type" "text/css"}
              :body (slurp "resources/style.css")})
           (GET "/index.js" []
             {:status 200
              :headers {"Content-Type" "application/javascript"}
              :body (slurp "resources/index.js")})
           (GET "*" []
             "nothing here"))

index.html

<!DOCTYPE html>
<html>
  <head>
    <link rel="stylesheet" type="text/css" href="style.css">
  </head>
  <body>
    <div id="map"></div>
    <script async defer
            src="https://maps.googleapis.com/maps/api/js?key=KEY&callback=mapReady">
    </script>
    <div id="toast"></div>
    <script src="index.js" type="text/javascript"></script>
  </body>
</html>

如果我尝试从浏览器访问它们,我可以GET访问所有资源文件,但由于某种原因,它们没有被主页加载index.html。我可以说是因为没有对元素应用样式。控制台中没有错误。我应该如何让这个服务器工作?

标签: javascriptbrowserserverclojurecompojure

解决方案


推荐阅读