2011-09-20 6 views
1

가능한 중복 : 내가 페이스 북 응용 프로그램을 개발
facebook app getting redirected out canvas viewFacebook 앱이 Facebook의 캔버스 페이지 대신 내 웹 사이트로 리디렉션됩니다.

. index.php를 여기 게시했습니다. 내 페이스 북 계정에서 앱 아이콘을 클릭하면 www.mywebsite.com/facebook/index.php 페이지로 리디렉션됩니다. 그것은 내 App - apps.facebook.com/example/의 캔버스 URL로 리디렉션해야하지만 코드에서 appBaseUrl 및 baseUrl 주소를 교환 한 후에도 여전히 내 웹 사이트로 리디렉션됩니다.

https://github.com/facebook/php-sdk에서 다운로드 할 수있는 공식 php-sdk 3.0을 사용했습니다.

무엇이 문제입니까? 앱이 Facebook의 캔버스 페이지로 이동하지 않는 이유는 무엇입니까? 문제점을 해결하기 위해 아래 코드에서 변경해야 할 내용은 무엇입니까? 이 질문에 도움을 줄 수있는 사람이 있으면 답변 해주십시오.

$fbconfig['appid' ] = "XXXXXXXXXXX"; 
$fbconfig['secret'] = "XXXXXXXXXXXXXXXXXXXXXXXXXXX"; 
$fbconfig['appBaseUrl'] = "https://apps.facebook.com/example/"; 
$fbconfig['baseUrl'] = "http://www.mywebsite.com/facebook/"; 

include_once "facebook.php";  

$facebook = new Facebook(array(
    'appId' => $fbconfig['appid'], 
    'secret' => $fbconfig['secret'], 
    'cookie' => true, 
)); 

$loginUrl = $facebook->getLoginUrl(
array('scope'=>'email,publish_stream,user_birthday,user_location'));  

if (!(isset($_GET['code']))) 
    echo "<script type='text/javascript'>top.location.href = '".$loginUrl."';</script>"; 

else 
{ 

    $user = $facebook->getUser(); 

    try { 
    $user_profile = $facebook->api('/me'); 
    } catch (FacebookApiException $e) { 
    err($e); 
    $user = null; 
    } 

$userInfo = $facebook->api("/$user"); 

function err($d){ 
    echo '<pre>'; 
    print_r($d); 
    echo '</pre>'; 
} 

}

답변

0

는 빈 설정 SITE_URL을, 당신의 페이스 북의 개발자 설정을 확인하고 페이스 북의 응용 프로그램 통합을위한 URL을 설정합니다.

+0

사이트 URL을 확인했는데 비어 있었으며 설정의 캔버스 URL도 apps.facebook.com/example/으로 설정되었습니다. 나는 이것이 문제라고 생각하지 않는다. 다른 것이 잘못되었다고 생각할 수 있습니까? 고맙습니다. – Sri

0

캔버스 URL을 확인해야합니다. 캔버스 URL은 Facebook 앱 페이지에 콘텐츠를 표시합니다. 앱 설정에서이 URL을 지정하지 않으면 Facebook에서 사용자를 귀하의 사이트 URL로 리디렉션합니다.

+0

설정의 캔버스 URL이 apps.facebook.com/example/으로 설정됩니다. 아직도 리디렉션 중입니다. 그건 문제가 아니야. 어쨌든 고마워. – Sri

+0

example.com/facebook처럼이 URL을 웹 사이트에 설정해야합니다. –

관련 문제