【问题标题】:php facebook graph api query with access_token [closed]带有access_token的php facebook graph api查询[关闭]
【发布时间】:2012-10-18 09:41:25
【问题描述】:

我有一个 android 应用程序,用户在其中使用 facebook 进行身份验证。现在,我向我的服务器发出一个 post 请求,并将 facebook 的 access_token 发送到该服务器。在服务器上,我现在想通过将 access_token 传递给 facebook graph api 来访问用户信息。有什么解决办法吗?问题是用户只使用该应用程序,而网络服务器必须仅使用 access_token 进行身份验证。谢谢!

【问题讨论】:

  • 当然这是可能的——API 不关心访问令牌的来源,只要其有效即可。
  • 那么我将如何在 php 中执行此操作,这是我的问题。对不起。
  • 你已经有了access_token,为什么不使用Graph API获取用户信息呢?
  • 是的,我有 access_token。我已经搜索了很长时间以找到合适的解决方案,但我无法找到如何通过 php 向图形 api 发出请求

标签: php android facebook facebook-graph-api


【解决方案1】:

是的 - 它实际上非常“简单”(就 Facebook 而言)。

带您完成这些步骤:

  1. 设置:在 Facebok Developer 应用程序中,确保您已为同一应用程序设置了移动设备 (Android) 和网站设置。他们需要共享 App ID 和密钥
  2. 设置:下载PHP SDK for Facebook。这使得对抗原始“Graph”调用变得更加简单。
  3. 流程:当用户登录您的手机时,您将获得“访问令牌”。这是您要传递给 PHP 服务器的项目。
  4. 流程:在 PHP 中,当您初始化 Facebook 类时,告诉它不要使用 cookie。
  5. 流程:在 PHP 中,初始化类后,使用 SDK 中的 SetAccessToken 函数来使用您在移动应用中获得的访问令牌。
  6. 流程:然后,当您拨打/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();

【讨论】:

  • 非常感谢,第 5 步帮助我继续前进!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-18
  • 1970-01-01
相关资源
最近更新 更多