Facebook Object API - 作为文章创建,认为它是网站

时间:2014-11-15 02:06:51

标签: javascript facebook facebook-graph-api

我正在使用Facebook的Object API来创建我自己的自定义开放图形对象。对象创建得很好,代码如下:

FB.api(
    "https://graph.facebook.com/app/objects/article?access_token=token|secret",
    "POST",
    {
        "object": {
            "og:url": url,
            "og:title": title,
            "og:image": image
        }               
    },
    function(response) {
        // handle response
    }
);

然后我提示打开一个共享对话框,如下所示:

FB.ui({
    method: 'share_open_graph',
    action_type: 'news.reads',
    action_properties: JSON.stringify({
        article: 'https://graph.facebook.com/app/website/my_object_id'
    })  
}, function(response) {
    // handle response
});

对话框打开,但它出现此错误:

“网址https://graph.facebook.com/app/website/my_object_id上的对象有og:'网站'类型。 属性'article'需要一个og:type'article'的对象。“

但是我没有在创建时指定我正在制作文章吗?关于我哪里出错的任何想法?

我只是想动态创建opengraph对象,而不是在html页面上使用meta标签 - 我在页面上有一个项目列表,我想让用户作为opengraph对象共享。

1 个答案:

答案 0 :(得分:0)

要使用“共享”对话框发布通过API创建的对象,您需要在创建对象时传递从API返回的对象ID,而不是URL。

(当您想要发布在外部域上其他位置托管的Open Graph对象时,URL将是一个合适的参数。)