2016-04-05 3 views
0

自分のウェブサイトに登録したユーザーが、自分が提供する電子メールアドレスに電子メールを送信して確認するシステムをセットアップしようとしています。React.jsとjson webtokenを使用して電子メールによるリンクからアクションを開始する方法

私がしたいのは、JSON Webtokenで電子メールアドレスに署名し、クリックするためのリンクを電子メールで送信することです。ユーザーがリンクをクリックすると、自分のウェブサイトに「あなたのアカウントが確認されました。ハッピーブラウジング」というページが表示されます。

これを行うには、次のような反応を引き起こすリンクを生成する必要があります。クリックしたどのようにこれが行われたか考えていますか?ページを開いて、ページに署名したトークンを送信しますか?それが確認されたらアクションがトリガーされますか?

答えて

1

Iは、例えば、我々は

  • 「有効なアカウント」ページ/コンポーネント
  • サーバー上
  • をチェックすることができる非同期アクションの作成者を持つことができ、あなたがそれを行うにはさまざまな方法があると思いますあなたの状態の一部とこのチェックのステータスを処理する減速器

あなたのリアクションルータや他のルーティングシステムでは、「有効なアカウント」コンポーネントをマッチしたルートこのコンポーネントのマウントは、非同期アクションをディスパッチします。 このアクションは、別のアクション(START_CHECKING、SUCCESSFUL_CHECK、ERROR_CHECK、なにかなど)をディスパッチして、もちろんサーバーにapiコールを行うことができるはずです。あなたの減速機は別のケースを処理する必要があります。

あなたの「有効なアカウント」コンポーネントを接続して、チェックのステータスをユーザーに伝えることができます。

ボーナス:willReceivePropsでは、検証が正常に完了した場合には自宅にリダイレクトすることもできます。

私はあなたの問題を理解して助けになると思っています。質問がなければ問題ありません。

+0

ありがとう!私は "有効なアカウント"コンポーネントを持っている接続を見逃していました。私はこれを試してみます – noobuntu

+0

あなたが提案したものをかなり実装しました。ユーザーが電子メールアドレスを登録すると、json webtokenにメールを送信するアクションをディスパッチします。私はそれらをトークンのコピーペーストを要求する "確認"ページ/コンポーネントにリダイレクトします。検証に成功すると、それらはホームページにリダイレクトされます。私の質問は - どのように自動的に私の "確認"ページ/コンポーネントに移動し、ユーザーが手動でコピー - ペーストすることなく、トークンを提出するリンクを生成することができますか? – noobuntu

+0

生成されたリンクはトークンをurl paramとして持つことができます。ルータでは、取得してコンポーネントで使用できるはずですか? 質問:JWTを使用してユーザーを確認する理由(単なる質問です、それはよい練習かもしれません) – Exayy

関連する問題