2016-08-20 6 views
3

oauthを使用して第三者と認証する(スタックオーバーフローのように)ノードサーバーがあります。第三者が私のコールバックに当たってリクエストを承認してアクセストークンとその他の情報を取得したら、私はこの情報をリアクションアプリに渡したいので、リアクションアプリはRESTコールを使ってアクセストークンをまっすぐにしますプロバイダから。node express react oauth passアクセストークンのアトリビュート後に、反応クライアントアプリケーションでコールバックで

私は反応して新しいノードですが、アクセスを取得してトークン情報を更新できるノードサーバーを作成できます。私は新しいサービスを提供し、反応するアプリを提供しています。私は使用しています

app.use('/client', express.static(__dirname + '/client')); 

リアクションアプリに対応していますが、これは限られた範囲で機能します。私が現在行っている状況はその範囲を超えており、私はコールバックで認証した後に私の反応アプリと共にoauthの情報を送る方法を学びたいと思っています。私が使用しているフローは、コールバックの要求を許可してから、/クライアントルートにリダイレクトして、クライアントにoauth情報を渡すことができない、アプリケーションをレンダリングします。そのリダイレクトの前にヘッダーを設定してoauth情報を設定する方法はありますか、そして反応アプリでそのoauth情報を取得する方法はありますか?

ここでは、私が読んでいなければならないいくつかの道やリソース、そして私の現在の状況についてのアドバイスを得るためにここに投稿しています。私は速達についてもっと学びたいと思っています。現在必要な情報をヘッダーに設定して、反応アプリをファイルとして提供したいと思っています。まだわかりません。

アドバンスドすべてのおかげで!

答えて

2

質問にお答えします。したがって、SPA(シングルページアプリケーション)とOAuthログインの問題は、リダイレクトを使用してデータを転送する唯一の方法がURLクエリ文字列であることです。 JWT(JSON Webトークン)はこれを可能にしますが、モバイルネイティブSDKではサポートされています。 Node.jsのために

私はPassport.js OAuthのモジュールを使用することをお勧め、ログインフロー:ポップオーバーを使用することなく、ウェブのためのソリューション、ここで流れ

  1. 例/ AUTH /グーグル - > Googleにリダイレクトログインページ。
  2. 成功すると、あなたはコールバックURL /認証/グーグル/コールバックに戻ってリダイレクトさ
  3. また
  4. ませセッションは、我々はJWTを使用して生成するので、使用されていないなどaccess_tokenは、refresh_token、基本的なプロファイル情報を取り戻しますサーバー側のトークン。
  5. トークンを使用してアプリケーションにリダイレクトします。app.example.com?token=JASJKDk ..
  6. クライアント側では、クエリ文字列からトークンを抽出します。

これは、JWTの代わりにsession/cookieソリューションを使用することができる、使用可能なフローの1つです。

+0

ありがとうございました! これは意味があります。だから私は私のノードサーバーが/ auth/google&/認証/ Google /コールバックルートを処理し、私のクライアントに戻すためにURLに格納するaccess_token、refresh_tokenをエンコードするためにJWTを使用するだろうか? フローは次のようになります。 1. googleにログインするためのボタンをクリックします。ノードからのGoogleログインURLを取得するためにGETしますか? 2.login to google - >ノードへのコールバックを要求し、access_token、refresh_tokenなどを返します。 3。この情報のJWTをURLに追加してURL上にクライアントアプリケーションを返します 4.クライアントが使用するトークンでjwtを使用します。 – user1807880

+0

実際にはJWTが必要です。アクセストークンを戻す必要はなく、少なくとも私はあなたがクライアント側でこれらを必要としないと思う、サーバー側でのみ? –

+0

このユースケースでは、アクセストークンをクライアントに渡して、いくつかの残りの呼び出しを行うことを計画しています。私はJWTのようにURLにaccess_tokenを置くのは危険ですか?これがJWTを使用する理由であることを確認したい – user1807880

関連する問題