認証をどう作るか

サーバ側でチェックするだけで十分かと思ったが、そうでもない?

frontendinsights.com

FLUXと絡めた話(AUTH0というサービス)

Adding authentication to your React Flux app

stormpathというサービス

Tutorial: Build a React.js Application with User Authentication

基本方針

  • 通信は原則URLチェンジのタイミングでしか行わない。
  • ユーザ権限(非会員、通常会員、プレミアム会員)による

    • 「表示」制御は、React Componentでチェックする
    • 「遷移」制御(URL直叩き)は、サーバ側でチェックする
  • といっても分離するようなものではないかもしれない。つまり、Initial Rendering時にサーバ側で認証状態チェック。NGならリダイレクトとか。OKなら認証状態をpropsとしてcomponentに渡しつつHTML生成。

  • その後の非同期XHR(API呼び出し)に関しては、APIごとに認証状態のチェックをAPIサーバで行うイメージ?とすると、やはりReact Component側では難しいことを考えずに、渡されたpropsをみて「表示」制御を行うだけでいいんじゃないか?

業務アプリでReact.jsを使ってみた話 - Qiita

世の中

  • FLUXなどは特に「URL変更が必ずしも通信を伴わない」という前提があるので、クライアント側(=React Router側)でも認証状態に応じてリダイレクト、のような処理を書いているということかな。