首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用API的移动应用程序社交软件Laravel

使用API的移动应用程序社交软件Laravel
EN

Stack Overflow用户
提问于 2020-12-03 02:06:55
回答 1查看 273关注 0票数 0

我正在使用Laravel social website包进行社交媒体(Facebook,Gmail)身份验证,在网站上创建帐户和登录,工作正常。

现在我需要在移动设备上提供相同的功能,但到目前为止,我还没有得到任何关于如何以及在这种情况下需要做什么的有用线索。

我有存储用户信息的users表和存储社交名流返回的user_id和provider_id的social_providers表,使用下面的代码。

代码语言:javascript
复制
public function handleProviderCallback(Request $request, $provider = null) {

    try {
        $socialUser = Socialite::driver($provider)->user();
    } catch (\Exception $e) {
        return redirect('/');
    }
    //check if we have logged provider
    $socialProvider = SocialProvider::where('provider_id', $socialUser->getId())->first();
    if (!$socialProvider) {
        $name = explode(' ', $socialUser->getName(), 2);
        $first_name = $name[0];
        $last_name = $name[1];
        //create a new user and provider
        $user = User::firstOrCreate(
                        ['email' => $socialUser->getEmail()], ['last_name' => $last_name,
                    'first_name' => $first_name,
                    'email_verified_at' => date('Y-m-d H:i:s')]
        );
        $user->socialProviders()->create(
                ['provider_id' => $socialUser->getId(), 'provider' => $provider]
        );
    } else {
        $user = $socialProvider->user;
    }

    auth()->login($user);

    return redirect('/');
}

现在,在移动的情况下,需要做什么。我是否必须在手机上使用android SDK,并将用户信息和provider_id发送到后端?或者需要在后端Laravel端做些什么?感谢,如果有人可以指导我在基本的方式,需要做什么,在哪一方(移动或后端)。

EN

回答 1

Stack Overflow用户

发布于 2021-06-23 16:42:49

对于移动应用程序,您将需要使用mobile SDK来获取访问令牌,而在后端,您将需要使用访问令牌来获取用户信息,如下所示

代码语言:javascript
复制
$provider_user = Socialite::driver($provider)->userFromToken($request->access_token);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65113726

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档