allow configuring cache on/off
authorGeoffrey Allott <geoffrey@allott.email>
Thu, 1 Apr 2021 16:34:36 +0000 (17:34 +0100)
committerGeoffrey Allott <geoffrey@allott.email>
Thu, 1 Apr 2021 17:12:16 +0000 (18:12 +0100)
pokerwave.toml
src/config.rs
src/main.rs

index 718a42d3034d59d6ce636eb1c63cf04fff46ce13..9e62b9566fc5beb30ce119b98789b49ab823a4bb 100644 (file)
@@ -10,3 +10,4 @@
 #site = "site"
 #cert = "cert/cert.pem"
 #key = "cert/key.pem"
+#cache = false
index bef5394508dfd235cb096efb049bed7e0d3cda57..df917f201e0af0fffdd29cccc319c96463e29cab 100644 (file)
@@ -66,10 +66,12 @@ pub struct ServerConfig {
     pub cert: Option<String>,
     #[serde(default)]
     pub key: Option<String>,
+    #[serde(default)]
+    pub cache: bool,
 }
 
 impl Default for ServerConfig {
     fn default() -> Self {
-        Self { bind: default_bind_addr(), site: default_site_path(), cert: None, key: None }
+        Self { bind: default_bind_addr(), site: default_site_path(), cert: None, key: None, cache: false }
     }
 }
index 559a46b8e12c650be1662d0f8038f27b2fc0fb95..cc36400aac5d1f05fb72b22ab2c4a07bfb110654 100644 (file)
@@ -143,7 +143,11 @@ async fn main() -> Result<(), tide::Error> {
     let server: Pin<Box<dyn Future<Output = Result<(), std::io::Error>>>> = if run_server {
         let mut app = tide::with_state(server);
 
-        app.at("/").with(After(append_cache_control)).serve_dir(&config.server.site)?;
+        if config.server.cache {
+            app.at("/").with(After(append_cache_control)).serve_dir(&config.server.site)?;
+        } else {
+            app.at("/").serve_dir(&config.server.site)?;
+        }
         app.at("/").with(After(append_cache_control)).serve_file(config.server.site.join("index.html"))?;
         app.at("/api").get(WebSocket::new(new_client));
         app.with(After(serve_404));