Facebook用js sdk打开图形自定义故事和自定义对象

时间:2013-07-24 12:21:51

标签: facebook-javascript-sdk facebook-opengraph

我正在尝试使用js sdk使用自定义故事和对象开发Facebook应用程序,但我遇到了一些问题。

我尝试实现的目的是创建一个类似的故事: “John在MyApp上踢足球 - 与迈克和凯特在城市体育场” 在文本下成为图像,标题和一些描述,然后点击链接。

我已经定义了我的动作“Play”和我的对象“Football”。

facebook给出的动作代码是:

FB.api(
  'me/myapp:play',
  'post',
  {
    football: "http://samples.ogp.me/xxxxxxxxxxxx"
  },
  function(response) {}
);

facebook提供的目标代码是:

FB.api(
  'me/objects/myapp:football',
  'post',
  {
    app_id: myappid,
    type: "myapp:football",
    url: "http://samples.ogp.me/xxxxxxxxxxx",
    title: "Sample Football",
    image: "https://fbstatic-a.akamaihd.net/images/devsite/attachment_blank.png",
    description: ""
  },
  function(response) {}
);

但我用它如下: HTML:

<a onclick="playFootball();" href="#">Play Football</a>

JS:

function playFootball() {
    FB.api(
            'me/testapp-radu:play',
            'post',
            {   
                tags: "xxxxxx, xxxxxx,",
                place: "https://www.facebook.com/pages/MyPlace/xxxxxx?ref=br_rs",
                football: "http://samples.ogp.me/xxxxxx",
                image: "http://www.peter-ould.net/wp-content/uploads/soccer-ball.jpg",
                privacy: {'value': 'SELF'}
            },
    function(response) {}); 
}

结果如下: http://img545.imageshack.us/img545/337/yj9o.jpg

  1. 我无法将“踢足球”变成“踢足球”。
  2. 尽管使用了属性标题,标题仍然保持不变,同样适用于网址和描述,我也试图使用一个对象,但仍然没有结果。
  3. 如果有人能帮我解决这两个问题,我会非常感激,或者至少指出一些基本的教程(Facebook文档有时让我感到困惑)。

1 个答案:

答案 0 :(得分:2)

我认为您使用足球作为指定故事的错误方式。您正在使用实例的名称而不是类。让我解释一下。

以下是我可以提出的两种情况:

  1. 您的应用是关于用户玩的游戏。因此,在这种情况下,您的对象变为游戏,足球将成为游戏的name。所以现在你的故事如下:

    “通过your_app与B和C一起踢足球”因为你将提供游戏对象的name属性,facebook将为你选择正确的故事句子

  2. 您的应用是关于运动产品,在这种情况下,您的对象变为 sport_product 产品,足球将成为运动产品的一个实例。但在这种情况下,播放的行为没有任何意义。所以我们说购买是一种行动。所以现在你的故事如下:

    “A通过your_app用B和C买了足球”

  3. 另外,如果你想一想足球作为一个对象没有意义。足球的name属性的价值是什么?“卡卡的足球” - 没有任何意义。考虑一般类对象而不是实例。 (想想Movie而不是开始)。

    Sample Story

    希望这是有道理的!