Skip to content

Protected routes getting called without authentication #126

Open
@vineet-287

Description

@vineet-287

I got routes are calling without authentication. Even I used protected but it's not working. Here below my snippet :

//in routes.js

import UniversalRouter from 'universal-router';

const routes = [
 path: '/',
  protected : true,
  
  async action() {
    const Home = await new Promise((resolve) => {
      require.ensure([], (require) => {
        resolve(require('./Home').default);
      }, 'home');
    });
    return <Home key={'home'} />;
  },
];
//When router resolve
app.get('*', async (req, res, next) => {
    try {
        let css = new Set();
        let statusCode = 200;
        const data = {title: '', description: '', style: '', script: assets.main.js, children: ''};
        await UniversalRouter.resolve(routes, {
            path: req.path,
            query: req.query,
            context: {
                insertCss: (...styles) => {
                    styles.forEach(style => css.add(style._getCss())); // eslint-disable-line no-underscore-dangle, max-len
                },
                setTitle: value => (data.title = value),
                setMeta: (key, value) => (data[key] = value),
            },
            render(component, status = 200) {
                css = new Set();
                statusCode = status;
                data.children = ReactDOM.renderToString(component);
                data.style = [...css].join('');
                return true;
            },
        });

        const html = ReactDOM.renderToStaticMarkup(<Html {...data} />);

        res.status(statusCode);
        res.send(`<!doctype html>${html}`);
    } catch (err) {
        next(err);
    }
});

Can somebody please explain how to redirect them on login screen ?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions