1
0
mirror of synced 2025-12-21 02:46:50 -05:00
Files
docs/middleware/anchor-redirect.js
2022-05-03 15:30:03 -04:00

23 lines
758 B
JavaScript

import express from 'express'
import { readCompressedJsonFileFallbackLazily } from '../lib/read-json-file.js'
const clientSideRestAPIRedirects = readCompressedJsonFileFallbackLazily(
'./lib/redirects/static/client-side-rest-api-redirects.json'
)
const router = express.Router()
// Returns a client side redirect if one exists for the given path.
router.get('/', function redirects(req, res, next) {
if (!req.query.path) {
return res.status(400).send("Missing 'path' query string")
}
if (!req.query.hash) {
return res.status(400).send("Missing 'hash' query string")
}
const redirectFrom = `${req.query.path}#${req.query.hash}`
res.status(200).send({ to: clientSideRestAPIRedirects()[redirectFrom] } || null)
})
export default router