2017-07-13 7 views
0

ユーザーがアプリケーションを認証する場合、リンクされたデータにアクセスしたいと思っています。私はすでにいくつかの例を見てきましたが、私はこの作業のためにコントローラの中に何を書き込むべきか理解できません。スプリングを使用したリンクイン統合のコントローラの内容

私が望むのは、私のコントローラがリンクされたログインページに接続してから、ユーザーが詳細を入力する必要があるということです。そのアプリケーションはデータを取得し、ページは別のウェルカムページにリダイレクトされます。

ここは私のLoginControllerです。

が、以下のコントローラ用

@Controller 
 
public class LoginController { 
 
\t 
 
\t @RequestMapping(value="/login", method = RequestMethod.GET) 
 
\t public ModelAndView welcome() { 
 
\t \t ModelAndView mav = new ModelAndView(); 
 
\t \t mav.setViewName("loginPage"); 
 
\t \t return mav; 
 
\t } 
 
}
、私はどのようにアプローチすべきか?

@Controller 
 
public class LinkedInController { 
 
\t 
 
\t private LinkedIn linkedin; 
 
\t private ConnectionRepository connectionRepository; 
 
\t 
 

 
}

事前に感謝します!

答えて

0

私はチュートリアルの世界にあなたを戻すことを嫌っていますが、私はQuick Startが役に立つと感じました。あなたの混乱の一部は、それはあなたが流れを可視化しているどのように関連しているように聞こえる:

私は何をしたいことは、私のコントローラは、LinkedInのログインページと は、ユーザーが詳細を入力しますに接続する必要があります。

これはコントローラの責任を説明する方法ではありません。あなたは単にAPIバインディングを取って、あなたがする必要があるすべての作業を行うだけです。その時点で既にLinkedInにログインしています。

から:Spring Social Quick Start - Step 4 Invoke APIs

@Controller 
public class HomeController { 

    private final Facebook facebook; 

    @Inject 
    public HomeController(Facebook facebook) { 
     this.facebook = facebook; 
    } 

    @RequestMapping(value="/", method=RequestMethod.GET) 
    public String home(Model model) { 
     List<Reference> friends = facebook.friendOperations().getFriends(); 
     model.addAttribute("friends", friends); 
     return "home"; 
    } 
} 

それは彼らがProviderSignInControllerで行うLinkedInの、(クイック・スタートのステップ2 - Configure Spring Social3 - Create Viewsを参照)への接続を処理するために、春社会の仕事です。

ユーザーが自分のプロバイダアカウントを使ってサインインすることができますProviderSignInControllerを追加します。

@Bean 
public ProviderSignInController providerSignInController() { 
    return new ProviderSignInController(connectionFactoryLocator(), usersConnectionRepository(), new SimpleSignInAdapter()); 
} 

ユーザーが自分のプロバイダのアカウントでサインインすることを可能にする「サインイン」ビューを作成します。彼らはCRE

<%@ page session="false" %> 
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 

<form action="<c:url value="/signin/facebook" />" method="POST"> 
    <button type="submit">Sign in with Facebook</button> 
</form> 

ProviderSignInController食べ物は/signin/{providerId}リクエストにマップされ、ユーザーはそのビューにアクセスできるようになります。

もう一度ストレスを感じます:クイックスタートをご覧ください。それはあなたが望むものをほぼ正確にモデル化します。完了すると、ユーザーのFacebookの友達を表示するウェルカムページにリダイレクトされるソーシャルログインです。

+0

ありがとうございました。私はそれをするだろう。 – shinchaan

関連する問題