1

我是用于用户登录的 facebook js sdk,在服务器端我想获取我正在尝试使用的用户数据

Socialite::with('facebook')->user()

为了使其正常工作,我的 JavaScript 中需要 2 个查询字符串代码和状态,我正在使用以下内容

var auth_status_change = function(response) {

        console.log(response);
        if(response.status == "connected")
        {
            window.location = "{{URL::to(App::getLocale()."/fb_login")}}?code="+??+"&state="+???;
        }

    }
FB.Event.subscribe('auth.statusChange', auth_status_change);

如何获取状态和代码值以为社交名流创建有效的回调 URL

4

1 回答 1

1

您正在尝试将两件做同样事情的事情结合起来,但一件在服务器端,一件在客户端,这是行不通的。

Laravel Socialite 使用您的应用令牌将您的用户重定向到 Facebook,授权您的应用代表他们使用 Facebook(令牌)并为您提供用户数据。使用令牌,您可以从 Laravel 进行 API 调用。

Facebook JS SDK 做同样的事情,但在浏览器中。它获取一个用于执行 API 调用的令牌。

查看https://laracasts.com/series/whats-new-in-laravel-5/episodes/9了解社交名流的工作原理。

除非您使用 JS SDK 功能,否则您可以忽略它,只需添加一个指向社交名流路由的链接,该路由将其重定向到 Facebook。该调用将为您提供获取用户所需的代码和状态。

于 2015-04-21T09:14:47.393 回答