2017-08-06 16 views
0

私のアプリでは、ユーザsession_idをローカルストレージに保存したいと思います。私のアプリはReactとReduxで書かれています。私はユーザーからsession_idをApiから取り出します。ユーザーが自分のアプリにログインしているときにsession_idを保存しますか? これにはどのように最適なソリューションがありますか?ユーザーセッションをリアストサーバ側アプリケーションのlocalstorageに保存

答えて

0

session_idをサーバから受信したときにローカルストレージに保存するだけです。アプリケーションの初期化ファイルで、ローカルストレージにsession_idが含まれているかどうかを確認します。その場合は、そのIDを使用してユーザーデータを取得します。

ローカルストレージはクライアントサイド(ブラウザ)機能なので、バックエンドで使用することはできません。

もう1つの方法は、session_idをクッキーに保存し、そのクッキーをサーバー側で読み取ることです。そうすれば、既にサーバー側のユーザーを認証することができます。

+0

ウィンドウオブジェクトが見つかりませんでした。私のアプリはサーバーで実行されるため。 –

+0

ええ、それを使用しようとする前にそれが存在するかどうかを確認する必要があります。 – Hardy

0

あなたの質問を理解していなければならないコードをもっとよく共有できますか?私が理解したところから、以下のコードを試してみてください。 elseステートメントで、セッションIDのapi要求を行い、次にapi要求から来たセッションIDでsetItemを行います。 currentSessionIdという変数でアクセスできます。

var currentSessionId; 

    if(localStorage.getItem('session_id')){ 
     currentSessionId = localStorage.getItem('session_id'); 
    } else { 
     localStorage.setItem('session_id','<session id>'); 
     currentSessionId = localStorage.getItem('session_id'); 
    } 

関連する問題