私はnodejsにいくつかのAPIを、クライアント側にReact Appを持っています。私は私のAPI/backofficeの認証システムをjwtトークンで作成しようとしましたが、私はjsonwebtoken
を使ってサーバ側のトークンを作成していますが、クライアント側には疑念があります...ログイン時にlocalstorage React-Router "onUpdate"を使ってローカルストレージにトークンがあるかどうかを確認します。そうでなければ、ログインするためにリダイレクトしません。私のアプリでは、各Ajaxリクエストに対してauthヘッダーを追加します。反応認証フローの確認
これは私が
$.get('/login',credential, function (result) {
localStorage.setItem('id_token', result.token)
});
ジェネリックリクエストログイン私のルータここ
export const isLoggedIn = (nextState, replace) => {
console.log(localStorage.getItem('id_token'));
}
<Router history={browserHistory} onUpdate={isLoggedIn} >
<Route path="/" component={App}>
<IndexRoute component={Login.Login} />
<Route path="admin/" component={Dashboard} />
<Route path="admin/tutti" component={Users} />
</Route>
</Router>
です:
$.ajax({
url:"/api/users",
type:'GET',
contentType: "application/json",
success:function (result) {},
headers: {"x-access-token": localStorage.getItem('id_token')}
});
をこれはインクルードは認証フローを反応させるのに管理するための正しい方法は何ですか? 私の疑問は、isLoggedIn上に何らかの形でトークンを確認する必要がありますか?
ありがとうございます!
がこの回答をありがとうございました、私はこの方法を勉強、私はマウント/上で、疑問を持っていることが検証無用です更新します毎回トークン? – kikko088