私はreact-reduxアプリを持っており、認証のためにパスポート - フェイスブックを使用しています。私は、ユーザーがアプリケーションの任意のページからログインし、すぐに同じページに戻る(リダイレクトされる)ことができるようにしたい。これを達成するための最良の方法は何ですか?ユーザーがパスポート - フェイスブック認証でreact-reduxアプリにログインしたページにリダイレクトするにはどうすればよいですか?
これまでのところ、私は以下の解決策を考え出しましたが、それは正しくはありません。私は 'ダミー' SuccessLoginコンポーネントを作成し、成功したログイン後にそのコンポーネントにリダイレクトします。 「ダミー」コンポーネントでは、ユーザーを前の場所に再度リダイレクトします。
サーバーサイドコード:
router.get '/facebook/callback', passport.authenticate('facebook', { successRedirect: '/success', failureRedirect: '/auth' })
私の 'ダミー' のコンポーネントは次のようになります。
redirectBack =() ->
(dispatch, getState) ->
dispatch go(-1)
go
はアクションです:
class SuccessLogin extends React.Component
componentDidMount:() ->
@props.redirectBack()
render:() ->
null
これはredirectBack
が定義されている方法ですReact-Router-Reduxの作成者:https://github.com/reactjs/react-router-redux
このソリューションで問題が発生しますか?このロジックを実装するにはどうすればよいでしょうか?