Как управлять аутентификацией в ядре asp.net с реакцией? - PullRequest
0 голосов
/ 22 ноября 2018

Я создал ядро ​​asp.net для веб-сайта с машинописным шрифтом + реаги + веб-пак в Visual Studio 2017.

Я создал 1 просмотр mvc Home-> Index, который содержит только основной div для рендеринга реагировать.Затем еще 2 компонента (Login & Dashboard).Оба будут отображены внутри Home-> Index mvc view.

Я создал один компонент Private Route - для ограничения Dashboard без входа в систему.Как показано ниже:

export const PrivateRoute = ({ component: Component, ...rest }) => (
    <Route {...rest} render={props => (
        localStorage.getItem('user')
            ?
            <Component {...props} />
            : <Redirect to={{ pathname: '/login', state: { from: props.location } }} />
    )} />

)

и В основном компоненте, который я написал, как показано ниже

export class App extends React.Component<{}, {}> {
    constructor(props) {
        super(props);
    }

    public render() {
        return (
            <div >
                <BaseRoute exact path="/" component={Login} />
                <Route exact  path="/login" component={Login} />

                <Layout>
                    <PrivateRoute exact path="/dashboard" component={Dashboard} />
                </Layout>

            </div>
        );
    }
}

Он работает правильно, как после входа в систему, я сохраняю свой объект в локальном хранилище и всякий раз, когда я пытаюсь перенаправить наПанель инструментов, она проверяет локальное хранилище и перенаправляет меня обратно на страницу входа.

Но главная проблема, скажем, в том, что я вошел в систему сегодня и сохранил этот объект в локальном хранилище, а затем закрываю окно браузера (или пытаюсь открыть веб-сайт на следующий день) и снова пытаюсь перенаправить наприборная панель должна попросить меня войти в систему, а не прямо на приборную панель.

Так что я думаю, что мне нужно управлять сессией на стороне сервера основного сайта asp.net. Я не уверен, но что я могу сделать ??

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...