2011-09-30 31 views
1

我写了一个作为页面选项卡的应用程序,但我不希望别人使用它。是否有可能使应用程序只在我的网页上工作?如何让Facebook应用只在我的页面上工作?

另外,如果可以将用户重定向到我的页面,如果他通过另一个页面访问应用程序?

+0

[为Facebook应用获取每个标签页的唯一ID](http://facebook.stackoverflow.com/questions/5302471/getting-a-unique-id-per-tab-page-for- a-facebook-app) – ifaour

回答

2

这是有点粗糙,但应该工作。这将检查当前页面ID是否是您的页面ID,是否显示错误消息。

<?php 
    // Include the Facebook PHP SDK 
    require('includes/fbSDK/facebook.php'); 

    // Enter your app details 
    $app_id = "xxxxxxxxxxx"; 
    $app_secret = "xxxxxxxxxxxxx"; 
    $facebook = new Facebook(array(
     'appId' => $app_id, 
     'secret' => $app_secret, 
     'cookie' => true 
    )); 

    $signed_request = $facebook->getSignedRequest(); 

    // Get the curren page ID 
    $page_id = $signed_request["page"]["id"]; 

    // Enter your page ID 
    $mypageID = '123456789'; 

    if ($page_id == $mypageID): 
     include('/your/app/files.php'); 
    elseif ($page_id != $mypageID): 
     echo "This app only works on a single page!"; 
    endif; 
?> 

以下是你可以检查什么的一些例子:

$page_id = $signed_request["page"]["id"]; 
$page_admin = $signed_request["page"]["admin"]; 
$like_status = $signed_request["page"]["liked"]; 
$country = $signed_request["user"]["country"]; 
$locale = $signed_request["user"]["locale"]; 

比如,你可以用这个方法来要求别人喜欢的网页你展示内容之前。

希望这会有所帮助!

+0

哇,谢谢!我用来检查用户是否喜欢带图api的页面(检查他的喜好)。你的方式更简单。 – Daniel

+0

没问题,我只在几个星期前我自己的工作! – Brigante

+0

这是一个非常常见的问题(这个或'我怎么知道我的应用程序从哪个页面加载') - 我们可以将此作为常见问题解答进行推广吗? – Igy

相关问题