2

JavaEE 6 に基づいてステートレスな RESTFul API を開発していますが、セッションに何も保存しないことが重要です。

socialauth Java ベースのソーシャル認証プロバイダーを使用しています。

ドキュメントで説明されているように、認証が成功した後、セッションから取得することなく SocialAuthManager を再構築する方法があるかどうかを知りたいです。

session.setAttribute("authManager", manager);

その後:

SocialAuthManager manager = (SocialAuthManager)session.getAttribute("authManager");

これは避けたい。私はこのようなことをしたいと思います:

SocialAuthManager manager = new SocialAuthManager(PARAMS TO REBUILD PREVIOUS AUTH WORKFLOW);

前もって感謝します。

4

1 に答える 1

0

このライブラリの 4.10 バージョンでソーシャル認証を開発しています。ユーザーがリダイレクト URL を取得して承認されたら、次の方法でソーシャル サービスに接続します。

 AccessGrant accessGrant = manager.createAccessGrant(network.getId(), params);
 Optional<Profile> profile = Optional.ofNullable(manager.connect(accessGrant).getUserProfile());

 manager.disconnectProvider(network.getId());

where params - 成功コールバック API のリクエストからのパラメーター。ユーザープロファイルを取得したら、マネージャーを切断して再利用します。このメソッドを使用する場合は、並行性にも注意してください。

于 2016-01-19T13:52:09.313 に答える