2011-11-06 2 views
0

사용자가 기본 액세스를 위해 내 앱을 인증했을 수도 있지만 일부 페이지에서는 새로운 Open Graph API를 활용하고 액션을 벽에 게시 할 수 있습니다. 그래서 나는 그들이 내 웹 사이트에이 권한을 부여했는지, 그리고 그 권한을 추가 할 수있는 옵션을 제공하지 않았는지 확인하려고 노력 중이다. 여기에 내 코드입니다 : (? 이미 기술적으로 로그인하고 가능하기 때문에) Facebook 사용 권한 확인 PHP

<?php 
require 'fbphp/facebook.php'; 

// Create our Application instance (replace this with your appId and secret). 
$facebook = new Facebook(array(
    'appId' => '??????', 
    'secret' => '???????', 
)); 

$permissions = $facebook->api("/me/permissions"); 
if(array_key_exists('publish_actions', $permissions['data'][0])) { 
    // Permission is granted! 
    echo "we have permission"; 
} else { 
    // We don't have the permission 
    echo "no perms"; 
    $login_url = $facebook->getLoginUrl(array('scope' => 'publish_actions')); 
     echo 'Please <a href="' . $login_url . '">login.</a>'; 
} 

?> 

I 권한에 대한 메시지를 표시하지 않고 똑바로 동일한 페이지에 다시 리디렉션 로그인 링크를 클릭 할 때 어떤이 코드가 현재하고있는 것은

. 물론 저는 아직 허락을받지 못 했으므로 저는 정사각형으로 돌아 왔습니다.

그래서 이미 로그인 한 사용자의 권한을 요청할 수 있습니까? 앱 역할에서 만든 테스트 사용자를 사용하고 있습니다.

답변

0

이 문제도있었습니다. 하지만 제 경우에는 사이트를 게시하기 전에 모든 것을 테스트합니다. 그렇게하는 것처럼, 시도해보십시오. Facebook 자체에서 테스트 사용자 계정으로 이동하십시오. 그런 다음 계정 설정으로 이동 한 다음 앱 설정 (왼쪽 막대에 있음)으로 이동하십시오. 거기에서 귀하의 사이트 또는 응용 프로그램을 제거하여 권한을 제거하십시오. 그런 다음 앱에 다시 액세스하려고하면 새로운 권한이 필요하다는 메시지가 표시됩니다.

+0

답장을 보내 주셔서 감사합니다.하지만 나중에 내 문제가 아니라는 것을 알았습니다. Timeline/Open 그래프가 베타 버전에서 나올 때까지는 사용할 수없는 publish_actions 권한을 요청했기 때문입니다. 다른 권한을 시도하면 확인 메시지가 나타납니다. –