Javascript 我可以在开放图中通过fb.api调用传递一些参数吗
请参阅以下我用于Facebook Open Graph的代码:Javascript 我可以在开放图中通过fb.api调用传递一些参数吗,javascript,facebook-graph-api,Javascript,Facebook Graph Api,请参阅以下我用于Facebook Open Graph的代码: <meta property="fb:app_id" content="XXXXX" /> <meta property="og:type" content="collection" /> <meta property="og:url" content="http://XXXXXXXXXXXXX/" /> <meta property="og:title" content=
<meta property="fb:app_id" content="XXXXX" />
<meta property="og:type" content="collection" />
<meta property="og:url" content="http://XXXXXXXXXXXXX/" />
<meta property="og:title" content="" />
<meta property="og:image" content="http://XXXXXXXXXXXXXXXXXXXXXXXXXX.jpeg"/>
<script type="text/javascript">
function postCook() {
var parameters = new Array();
parameters["og:title"] = "some_text";
FB.api(
'me/<namespace>:<wwwww>',
'post', {
collection: 'http://XXXXXXXXXXXXXXXXX/'
},
function(response) {
//alert(response.responseText);
console.log(response);
if (!response || response.error) {
alert('Error occured');
} else {
alert('Other22 was successful! Action ID: ' + response.id);
}
});
}
</script>
函数postCook(){
var参数=新数组();
参数[“og:title”]=“一些文本”;
FB.api(
“我/:”,
"岗位",{
收藏:'http://XXXXXXXXXXXXXXXXX/'
},
功能(响应){
//警报(response.responseText);
控制台日志(响应);
如果(!response | | response.error){
警报(“发生错误”);
}否则{
警报('Other22已成功!操作ID:'+响应.ID);
}
});
}
这里我想传递og:title
和其他一些参数,而不是在meta标记中使用。有没有办法在FB.api中传递更多参数
谢谢
在这里,我想传递og:title和其他一些参数,而不是在meta标记中使用
这不是开放图形对象的工作方式
URL标识对象,任何数据都必须包含在该URL提供的HTML代码中。虽然我可能对此有错(因为Facebook无情地改变了API),但他们不允许您传递任何自定义标记信息,可能是因为它可能被用来歪曲信息 相反,一旦发布操作点击Facebook,Facebook将立即抓取传入的url,并抓取它能找到的所有元数据,在返回到其他传统的元信息检索方法(标题标签、抓取正文等)之前,先对任何打开的图标记进行优先级排序 一个可能的“解决办法”是向Facebook传递一个“回音”url,而不是目标url本身。不过,这取决于您使用服务器端解决方案,因为我不相信您可以使用JSSDK实现这一点 i、 e.不要传递到facebook,而是传递 根据需要定制url参数,它们将在
echo.php
到$\u GET
中可读。然后,echo.php将包含Facebook要读取的开放图形标记,然后通过javascript将用户重定向到正确的URL。Facebook的scraper不会遵循javascript重定向
echo.php:
<html>
<head>
<meta property="og:title" value="<?=$_GET['title']?>">
</head>
<body>
<script>
window.location.href = '<?=$_GET['url']?>';
</script>
</body>
</html>