2011-11-05 2 views
0

내 응용 프로그램은 페이스 북의 oauth에서 새로운 변경 사항을 따라 잡을 수 없습니다. 이전에는 사용자 권한을 요청할 수 있었지만 앱에 액세스 할 수있었습니다. 이제 새로운 사용자는 더 이상 내 앱에 권한을 부여 할 수 없습니다. 그들은 전송됩니다권한 오류 Oauth2.0

https://www.facebook.com/dialog/permissions.request?app_id=myappid&display=page&next=http%3A%2F%2Fwww.mywebsite.com%2Ffacebook%2F&response_type=code&state=094d0568ec11f05e8cc594d69342d0e1&fbconnect=1

와 메시지가 나타납니다 "죄송합니다, 뭔가 잘못 우리는 최대한 빨리 우리가 할 수있는 그것을 해결하기 위해 최선을 다하고 있습니다.." 반면에 사용자가 oauth 전에 내 앱에 대한 권한을 이미 부여했다면 모든 것이 정상이었습니다.

PHP는 이런 식입니다 :

$user = $facebook->getUser(); 

if ($user) { 
    try { 
    // If the user has been authenticated then proceed 
    $user_profile = $facebook->api('/me'); 
    } catch (FacebookApiException $e) { 
    error_log($e); 
    $user = null; 
    } 
} 

// If the user is authenticated then generate the variable for the logout URL 
if ($user) { 
$logoutUrl = $facebook->getLogoutUrl(); 

는 사용자가 내 응용 프로그램의 HTML 인덱스 페이지를받습니다. 그렇지 않으면, 그들은 페이지의 끝에 다음 PHP를 통해 대화 요청 권한으로 리디렉션로되어있다 : 내가 미리 등록 된 사용자가 완벽하게 콘텐츠에 액세스 할 수 말했듯이

} else { 
    $loginUrl = $facebook->getLoginUrl(array('redirect_uri' => $fbconfig['appUrl'])); 
    print "<script type='text/javascript'>top.location.href = '$loginUrl';</script>"; 
} 

하지만, 새로운 회원 인사 권한 위주의 화면이 아니라 위의 오류가 표시됩니다.

누구든지 내 사용 권한 문제를 해결할 수 있습니까? 어떤 조언

답변

0

당신이 얻고있는 오류 메시지에 대한 감사는이 (에 따라 즉시 앱에 포함되지 않은 페이지에 로그인 후 사용자를 리디렉션하려는 의미

API Error Code: 191 
API Error Description: The specified URL is not owned by the application 
Error Message: redirect_uri is not owned by the application. 

입니다 당신의 설정)

이것의 원인은 $fbconfig['appUrl'])에 정의 된 URL이 IGY @ 사이트 도메인 (들) 필드

+0

에서 앱 설정에서 구성한 내용과 일치하지 않습니다. 고맙습니다. 나는 왜 이것이 몇 주 전에 더 이상 작동하지 않는지 잘 모르겠습니다. 명확히하기 위해 $ fbconfig [ 'appUrl'])는 https : // mywebsite.com/facebook/으로 설정됩니다. 내 사이트의 URL과 캔버스 URL은 모두 위의 동일한 URL로 설정됩니다. 당신의 도움을 주셔서 감사합니다. –

+0

'App Domain'필드가 가장 큰 원인입니다. 앱 카테고리 선택 바로 위에있는 기본 설정 페이지에 있습니다. 사이트 URL과 캔버스 URL 설정이 다릅니다. – Igy

+0

Thanks Igy. 'site url'(https :)은 $ fbconfig [ 'appUrl']과 같은 값으로 설정됩니다.이 값은 my 'secure canvas url'과 동일한 값으로 설정됩니다. 반면에 '캔버스 페이지'는 apps.facebook.com/myapp/로 설정됩니다. 아직 작동하지 않는 그러나 .. 도와 줘서 고마워. –