2017-01-18 4 views
1

私は現在オフラインで最初のモバイルアプリケーションで作業しています。私はPouchDBとCouchDBリモートサーバを使用しています。 (オプションが選択されている「私を覚えて」いる場合)、ユーザーはユーザー名とパスワード保存するために、 https://github.com/nolanlawson/pouchdb-authenticationPouchDBのログインデータを記憶する

私は何を達成したいことは次のとおりです。

私がログインを使用してからユーザー関数を作成しました。モバイルデバイスを再起動してアプリを開くと、再度ログインするのではなく、アカウントにログインして起動します。 (facebook/twitter appのようなビット)。

これを達成するのに役立つ人がいますか?私は助けや知識のすべての小さなビットのために開いている!

答えて

2

は、_idの接頭辞が_local/の文書にユーザー名とパスワードを格納できます。これらの種類のドキュメントは、レプリケーションの開始時には同期されません。詳細情報in the PouchDB docs

もう1つの解決策は、受け取った認証トークンをcookie authenticationで保存することです。永続的なCookieを発行するようにCouchDBを設定し、より長い期間(see the documentation)にタイムアウトを設定することができます。これは、パスワードをどこでもクリアテキストに保存しないので、より安全です。ここで

+0

ありがとうございました。やってみるよ – thomagron

1

は、私はそれをやった方法は次のとおりです。

開始時に、私は前の有効なユーザ名のためlocalstorageをチェック

tmp1 = $localstorage.get('mymarker', '???'); 
if (tmp1 != '???') { 
    $scope.userdata.username = tmp1 
    skipusername = true; 
} 

は、次にログイン時に、私は、ユーザー名を事前移入(実際には完全にそれをスキップ)だけパスワードの入力を求めます。

私はそうのようなユーザー名を保存する有効な証明書の場合:

$localstorage.set('mymarker', $scope.userdata.username); 

私もパスワードを追加(CryptoJSは、暗号化のための素晴らしい作品)、再度パスワードを入力するために一日一回のルールを強制します。何か助けてほしい。

関連する問題