发送Facebook请求并获得礼物FB API

时间:2012-09-29 13:14:00

标签: facebook facebook-graph-api request facebook-javascript-sdk

我已经设法在Facebook上按照文档here

为我的应用程序实现“发送请求”功能

现在,如果用户'A'接受用户'B'发送给他的请求,我希望用户'B'获得特定于应用的礼物(图片)。 我的问题是,我怎么会发现是用户'B'邀请了用户'A'? (而不是用户'C')

感谢。

1 个答案:

答案 0 :(得分:5)

将请求ID与发起请求的用户B一起存储在数据库中。

当用户A点击请求时,他们将被重定向到您的应用,Facebook将向您发送请求ID。在数据库中查找请求ID以获取发起的用户。

获取请求ID的一些示例包含在Facebook documentation about deleting requests

虽然不是技术性的,但您可能还需要查看有section on gifting的请求最佳做法的文档。

另一种方法是从图api中获取发件人(注意这几乎总是比上面的解决方案慢)。通过将user_id与request_id连接,您可以获得特定的请求对象ID,并且可以向图API发出GET请求,如下所示:

https://graph.facebook.com/<REQUEST_OBJECT_ID>?access_token=APP_ACCESS_TOKEN

在回复中,发件人位于from属性中:

{
  "id": "259855964134806_4", 
  "application": {
    "name": "Betcafe",
    "namespace": "betcafe-play", 
    "id": "240039049434634"
  }, 
  "to": {
    "name": "Zuck", 
    "id": "4"
  }, 
  "from": {
    "name": "Todd Chaffee", 
    "id": "532338216"
  }, 
  "message": "Join my team so we can pass balls to each other and help Milan win the weekly cup!", 
  "created_time": "2012-09-10T16:43:45+0000"
}