Podařilo se mi přesměrovat root '/'
do '/users'
ale '/users'
stav koncového bodu přepíše stav kořenového koncového bodu.
app.get('/', (req, res) => { res.redirect(301, '/users'); }); app.get('/users', (req, res) => { res.status(200).json(data.filter(user => user.isActive === true)); });
Jak je možné zkontrolovat, zda '/users'
ke koncovému bodu se přistupuje přes přesměrování nebo ne a pak se nastaví res.status
vhodně?
Odpověď
Nejsem si jistý, proč chcete, aby byl jako odpověď /users api zasílán http stav root api, ale níže lze použít hack k rozpoznání, zda jsou požadavky přijaty z kořenového api.
app.get('/', (req, res) => { res.redirect(301, '/users?redirect=true'); }); app.get('/users', (req, res) => { const redirect = req.query.redirect; if (redirect) { res.status(301).json(data.filter(user => user.isActive === true)); } else { res.status(200).json(data.filter(user => user.isActive === true)); } });