繁体   English   中英

facebook php重新认证:应用到服务器

[英]facebook php re-authentication : app to server

我们的应用程序是2层,电话应用程序(ios + droid)和我们的php API。

用户可以通过我们自己的用户名/密码系统登录,也可以通过Facebook登录。

当我使用通过Facebook登录时,它使用本机fb sdk。 这很好。

但是要访问我们的api,他们需要注册一个oauth令牌。 这通常是通过登录进行的。 但由于登录是通过应用程序上的fb进行的,因此api不知道此身份验证过程。

我需要一种将一些标识符从facebook传递到api的方法,然后让api验证标识符,然后为应用创建令牌以用于与我们的api进行通信。

我的第一个猜测是使用Facebook的重新认证机制: https : //developers.facebook.com/docs/facebook-login/reauthentication/

但所有这些示例都使用javascript sdk。 我在他们的PHP SDK的上下文中找不到任何文档。

这可能吗? 还是我走错了方向???

所以,我想我已经找到了解决方案。

移动应用程序登录并从Facebook获得“代码”。 该应用程序将代码传递给我的api,并调用api:facebook sdk方法: getAccessTokenFromCode (我必须将其从受保护更改为公共)。 如果用户未登录,则返回错误;如果用户登录,则返回令牌和到期日期/时间。如果我收到令牌响应,则在数据库中添加令牌,并让我的api正常工作。 希望这可以帮助某人...

$fb = new Facebook(array(
  'appId'  => 'xxxx',
  'secret' => 'xxxxxxxxxx'
));
$token = $fb->getAccessTokenFromCode(
    $args['fb_code'],
    'http://mydomain.com/'
);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM