我有一个 android 应用程序,用户在其中使用 facebook 进行身份验证。现在,我向我的服务器发出一个 post 请求,并将 facebook 的 access_token 发送到该服务器。在服务器上,我现在想通过将 access_token 传递给 facebook graph api 来访问用户信息。有什么解决办法吗?问题是用户只使用应用程序,而网络服务器必须仅使用 access_token 进行身份验证。谢谢!
问问题
1175 次
1 回答
6
是的——它实际上非常“简单”(就 Facebook 而言)。
带您完成以下步骤:
- 设置:在 Facebook 开发者应用程序中,确保您已为同一应用程序设置了移动设备 (Android) 和网站设置。他们需要共享 App ID 和密码
- 设置:下载Facebook 的 PHP SDK。这使得对抗原始的“Graph”调用变得更加简单。
- 流程:当用户登录您的手机时,您将获得“访问令牌”。这是您要传递给 PHP 服务器的项目。
- 过程:在 PHP 中,当您初始化 Facebook 类时,告诉它不要使用 cookie。
- 流程:在 PHP 中,初始化类后,使用
SetAccessToken
SDK 中的函数来使用您在移动应用中获得的访问令牌。 - 流程:然后,当您
/me
拨打电话时,您将是在移动设备上获得令牌的同一用户。
代码示例:
$facebook = new Facebook(array(
'appId' => 'YOUR_APP_ID',
'secret' => 'YOUR_APP_SECRET',
cookie : false
));
// Use the token you sent
$facebook->setAccessToken($sentToken);
// Get User ID
$user = $facebook->getUser();
于 2012-10-18T09:48:28.193 回答