2017-04-26 10 views
2

まず、このテンプレートに対して行ったadmin-or-restの素晴らしい作業に感謝します。admin-on-restの認証とOAuth2の実装

oauth2認証を実装するための簡単な回避策があるかどうか質問したいと思います。

basic JWT Authenticationを実装する方法の例がありますが、oAuth2で説明されているようにトークンをリフレッシュするために401エラーを処理する方法がわかりません。

ミドルウェアを適用する方法はありますか?私は過去に、私の行動とhttpハンドリングを完全に制御するために、redux-api-middlewareを試しましたが、ログイン以外のすべてのコールが自動的に処理されると、このシステムには適用できませんでした。

答えて

0

これは、管理オン残り1.0に変更されている、およびドキュメントは、あなたが何をしたいのかどのように達成するかについてより明確にしようとします:https://marmelab.com/admin-on-rest/Authentication.html#catching-authentication-errors-on-the-api

// in src/authClient.js 
import { AUTH_LOGIN, AUTH_LOGOUT, AUTH_ERROR } from 'admin-on-rest'; 

export default (type, params) => { 
    if (type === AUTH_LOGIN) { 
     // ... 
    } 
    if (type === AUTH_LOGOUT) { 
     // ... 
    } 
    if (type === AUTH_ERROR) { 
     const { status } = params; 
     if (status === 401 || status === 403) { 
      localStorage.removeItem('token'); 
      return Promise.reject(); 
     } 
     return Promise.resolve(); 
    } 
    return Promise.resolve(); 
}; 

さらに詳しい情報