我正在使用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对象共享。
答案 0 :(得分:0)
要使用“共享”对话框发布通过API创建的对象,您需要在创建对象时传递从API返回的对象ID,而不是URL。
(当您想要发布在外部域上其他位置托管的Open Graph对象时,URL将是一个合适的参数。)