Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何为Facebook自定义操作创建不同的URL_Facebook_Facebook Graph Api_Facebook Javascript Sdk - Fatal编程技术网

如何为Facebook自定义操作创建不同的URL

如何为Facebook自定义操作创建不同的URL,facebook,facebook-graph-api,facebook-javascript-sdk,Facebook,Facebook Graph Api,Facebook Javascript Sdk,我试图在facebook的自定义操作帖子中添加一个指向[对象]的自定义链接(下面用红色标记) 这是我的代码: FB.api('/me/testapponens:cook', 'post', { recipe: 'http://foobar.com/page1.html' }, function(response) { if (!response || response.error) { alert('Error occured'); } else {

我试图在facebook的自定义操作帖子中添加一个指向[对象]的自定义链接(下面用红色标记)

这是我的代码:

FB.api('/me/testapponens:cook', 'post',
{ recipe: 'http://foobar.com/page1.html' },
   function(response) {
     if (!response || response.error) {
        alert('Error occured');
     } else {
        alert('Cook was successful! Action ID: ' + response.id);
     }
});
现在,因为我已经声明了“
http://foobar.com/page1.html
“在我的“配方””中,发布时,打开的图形属性将从此页面中选取

问题:我需要将链接显示为第三方链接www.thirdparty.com/page1.html,但无法在thirdparty.com/page1.html中写入打开的图形元属性(因为我对该页面没有任何控制权)

因此,我决定这样做:

i) Create a dummy page : www.foobar.com/page1.html.
ii) Add all the og meta to it.
iii) Add a redirect (javascript) code to the dummy page so that it goes to the third party page.
www.foobar.com/page1.html
看起来像这样:

<html ...>
<title> Page 1 </title>
 <meta property="fb:app_id"            content="..." /> 
...
<script type="text/javascript">
function redirect1()
{
    window.location = "http://thirdparty.com/page1.html"
}
</script>
</head>
<body onLoad="redirect1()"></body>
</html>

第1页
...
函数重定向1()
{
window.location=”http://thirdparty.com/page1.html"
}
问题:我认为这是一种黑客手段,用户可能无法接受。有更好的方法吗?如果我无法解释我打算做什么,请告诉我

PS:我不是垃圾邮件发送者,第三方页面来自客户,我没有试图误导用户

我认为这是一种黑客手段,用户可能无法接受。有更好的方法吗

你可以做服务器端重定向,检查用户代理——只有当它没有指明是Facebook的刮板时,重定向客户端,否则让刮板从你的页面读取OG元信息


如何检测FB刮板:

谢谢。对不涉及重定向的内容有什么建议吗?不可能-如果你不能直接将OG标记放入目标URL,那么你必须重定向。