Cache busting
This commit is contained in:
parent
cef1b6f5aa
commit
0bc52a836a
12
server.js
12
server.js
|
@ -153,7 +153,10 @@ app.get("/register", rateLimit({ max: 5, windowMs: 60 * 1000 }), getRegister);
|
||||||
app.post("/register", rateLimit({ max: 5, windowMs: 60 * 1000 }), postRegister);
|
app.post("/register", rateLimit({ max: 5, windowMs: 60 * 1000 }), postRegister);
|
||||||
|
|
||||||
app.get("/reg", async (req, res) => {
|
app.get("/reg", async (req, res) => {
|
||||||
if (ENABLE_FIDO2 && ALLOW_REGISTER) return res.render("register");
|
if (ENABLE_FIDO2 && ALLOW_REGISTER)
|
||||||
|
return res.render("register", {
|
||||||
|
modifiedJS: Math.floor(fs.statSync("./static/register.js").mtimeMs).toString(36),
|
||||||
|
});
|
||||||
return res.status(403).send("Registration disabled");
|
return res.status(403).send("Registration disabled");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -179,7 +182,10 @@ app.get("/", async (req, res) => {
|
||||||
.map((e) => e.replace(".json", ""))
|
.map((e) => e.replace(".json", ""))
|
||||||
.includes(req.cookies.session)
|
.includes(req.cookies.session)
|
||||||
) {
|
) {
|
||||||
return res.render("login", { ALLOW_REGISTER });
|
return res.render("login", {
|
||||||
|
modifiedJS: Math.floor(fs.statSync("./static/login.js").mtimeMs).toString(36),
|
||||||
|
ALLOW_REGISTER,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.headers.accept?.toLowerCase() === "text/event-stream") {
|
if (req.headers.accept?.toLowerCase() === "text/event-stream") {
|
||||||
|
@ -213,6 +219,8 @@ app.get("/", async (req, res) => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return res.render("index", {
|
return res.render("index", {
|
||||||
|
mtimeJS: Math.floor(fs.statSync("./static/index.js").mtimeMs).toString(36),
|
||||||
|
mtimeCSS: Math.floor(fs.statSync("./static/style.css").mtimeMs).toString(36),
|
||||||
list: JSON.parse(fs.readFileSync("data/latest.json")).map(({ name, otp }) => ({
|
list: JSON.parse(fs.readFileSync("data/latest.json")).map(({ name, otp }) => ({
|
||||||
name,
|
name,
|
||||||
otp: "",
|
otp: "",
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
<link rel="manifest" href="/manifest.json" />
|
<link rel="manifest" href="/manifest.json" />
|
||||||
<link rel="icon" type="image/png" href="/favicon.png" />
|
<link rel="icon" type="image/png" href="/favicon.png" />
|
||||||
<link rel="apple-touch-icon" href="/favicon.png" />
|
<link rel="apple-touch-icon" href="/favicon.png" />
|
||||||
<link rel="stylesheet" href="/style.css" />
|
<link rel="stylesheet" href="/style.css?<%=mtimeCSS%>" />
|
||||||
|
|
||||||
<div class="list">
|
<div class="list">
|
||||||
<% list.forEach(function(e){ %>
|
<% list.forEach(function(e){ %>
|
||||||
|
@ -63,5 +63,5 @@
|
||||||
<input type="submit" />
|
<input type="submit" />
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<script src="/index.js" defer></script>
|
<script src="/index.js?<%=mtimeJS%>" defer></script>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
<link rel="manifest" href="/manifest.json" />
|
<link rel="manifest" href="/manifest.json" />
|
||||||
<link rel="icon" type="image/png" href="/favicon.png" />
|
<link rel="icon" type="image/png" href="/favicon.png" />
|
||||||
<link rel="apple-touch-icon" href="/favicon.png" />
|
<link rel="apple-touch-icon" href="/favicon.png" />
|
||||||
<link rel="stylesheet" href="/style.css" />
|
<link rel="stylesheet" href="/style.css?<%=mtimeCSS%>" />
|
||||||
|
|
||||||
<div class="counter"></div>
|
<div class="counter"></div>
|
||||||
<div class="nav">
|
<div class="nav">
|
||||||
|
@ -25,5 +25,5 @@
|
||||||
<span class="add material-icons">add</span>
|
<span class="add material-icons">add</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="/login.js" defer></script>
|
<script src="/login.js<%=mtimeJS%>" defer></script>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
<link rel="manifest" href="/manifest.json" />
|
<link rel="manifest" href="/manifest.json" />
|
||||||
<link rel="icon" type="image/png" href="/favicon.png" />
|
<link rel="icon" type="image/png" href="/favicon.png" />
|
||||||
<link rel="apple-touch-icon" href="/favicon.png" />
|
<link rel="apple-touch-icon" href="/favicon.png" />
|
||||||
<link rel="stylesheet" href="/style.css" />
|
<link rel="stylesheet" href="/style.css?<%=mtimeCSS%>" />
|
||||||
|
|
||||||
<div class="counter"></div>
|
<div class="counter"></div>
|
||||||
<div class="nav">
|
<div class="nav">
|
||||||
|
@ -25,5 +25,5 @@
|
||||||
<span class="add material-icons">add</span>
|
<span class="add material-icons">add</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="/register.js" defer></script>
|
<script src="/register.js<%=mtimeJS%>" defer></script>
|
||||||
</html>
|
</html>
|
||||||
|
|
Loading…
Reference in New Issue