1

我正在尝试构思一个 facebook 应用程序,用户会:

1- 通过浏览器登录 FB
2- 接受应用程序的权限(offline_access*、publish_stream 等)

然后我们将生成一个条形码/rfid 卡,其中主要代码将是他/她的用户名/ID。当用户将他的卡放在读卡器下时,“系统”应该启动一些东西并将一些东西发布到他的墙上/时间线上

所以:

我想我必须开发一个单独的桌面应用程序来接收来自阅读器的代码,然后使用我的应用程序 url 和一些 app_data 启动浏览器?

有没有一种方法可以在卡通过读卡器后自动“登录”用户到我的 FB 应用程序,通过使用一些令牌或类似的(知道用户之前接受了权限)?

我正在抛出想法,希望有人可以分享其他人,这样我就可以清楚这一点

谢谢

4

3 回答 3

1

使用扩展访问令牌(Long-lived Access Token)

$facebook = new Facebook(array(
  'appId'  => $fbconfig['appid'],
  'secret' => $fbconfig['secret'],
  'cookie' => true,
));

//Store or update this in your database when user accesses your application
$extended_access_token = $facebook->getExtendedAccessToken();

扩展访问令牌的有效期为 60 天。

于 2012-11-25T16:10:09.883 回答
0

您需要在步骤 1 中获取并存储访问令牌。使用此令牌,您可以代表用户发布。facebook 帮助页面上详细描述了如何获取令牌。显然没有offline_access。您需要一个有效期较长的令牌https://developers.facebook.com/roadmap/offline-access-removal/

最后是更糟糕的一点。您想代表用户发帖。如果您打算发布 FIX 内容,我必须警告您 - facebook 将禁止您。他们不允许为用户编造内容。它被视为垃圾邮件。您可以做的是发布一个打开的图形操作。

于 2012-10-04T12:09:50.567 回答
0

我的Php技能不好。但它认为您可以使用 HTTP post 使用此脚本进行发布。

$url = 'https://graph.facebook.com/USER_ID/feed?access_token=APP_ACCESS_TOKEN&message=YOUR_MESSAGE';
$ch = curl_init($url);

$response = curl_exec($ch);
curl_close($ch);

此响应包含一个包含 post_id 的 JSON 对象。

于 2012-10-12T06:21:44.930 回答