SocialAuth java库使用谷歌帐户

时间:2012-03-05 06:00:24

标签: java authentication socialauth

我在socialAuth java库中遇到了一个问题。我使用该库通过社交网络登录到我的应用程序。登录Facebook工作正常。但是,当我尝试使用谷歌和雅虎是不适合我。验证过程后出现错误,重定向部分无法正常工作,

@SuppressWarnings("unused")
@RequestMapping(params = "code")
private String oauth2Callback(final HttpServletRequest request,
                              HttpServletResponse response,
                              Model model) throws Exception {
    String serviceReturnUrl = request.getParameter("service");
    String clientAppKey = request.getParameter("app_key");
    org.brickred.socialauth.AuthProvider provider = null;
    SocialAuthManager manager = socialAuthTemplate.getSocialAuthManager();
    if (manager != null) {
        try {
            provider = manager.connect(SocialAuthUtil.getRequestParametersMap(request));
        } catch (Exception e) {
            e.printStackTrace();
        }
    } else {
        response.sendRedirect(appLoadConfigurer.getProperty("caslk"));
        return "";
    }

将Facebook重定向到我的应用时,此方法会捕获请求。但是当谈到谷歌时,我无法通过使用此方法来捕获谷歌的请求。请求不来这里。任何人都可以尽快解决我的问题

1 个答案:

答案 0 :(得分:0)

对于Google,您必须使用

@RequestMapping(params = "openid.claimed_id")

因为谷歌不会返回任何名称为“代码”的属性,这就是为什么它与此不匹配。