我正在使用一个应用程序(" http://apps.facebook.com/greetingz")这是我正在使用的ajax部分,我可以发送请求,也可以接收通知但是接收者点击通知,直接进入画布页面" apps.facebook.com/greetingz" ,实际上我想展示一个不同的页面..请帮忙!
<?php
$app_id = "127736900693315";
$canvas_page = "http://apps.facebook.com/greetingz";
$message = $_POST['varx'];
$requests_url = "https://www.facebook.com/dialog/apprequests?app_id="
. $app_id . "&redirect_uri=" . urlencode($canvas_page)
. "&message=" . $message;
if (empty($_REQUEST["request_ids"])) {
echo("<script> top.location.href='" . $requests_url . "'</script>");
} else {
// echo "Request Ids: ";
//print_r($_REQUEST["request_ids"]);
echo $message;
}
?>
我如何使用以下代码来使用此应用程序
function onUrl(data) {
if (data.path.indexOf("games.achieves") != -1) {
console.log('I will process some achievement now.');
} else if (data.path.indexOf("request_ids") != -1) {
console.log('I will process some request now.');
} else {
// default behaviour
window.location = data.path;
}
}
FB.Canvas.setUrlHandler(onUrl);
答案 0 :(得分:2)
初始化FB api后,必须设置处理函数一些延迟。
FB.init(params);
setTimeout(function() { FB.Canvas.setUrlHandler(onUrl) }, 5000);
使用这种方式我可以使用此功能。