2011-08-16 3 views
1

Facebook API를 사용하면 팬 페이지 (탭 앱)에 추가 된 맞춤 앱에서 팬 페이지 ID를 어떻게받을 수 있습니까? 여기 Facebook API - Facebook API를 사용하여 페이지 ID를 얻는 방법은 무엇입니까?

내가 달성하기 위해 노력하고있어입니다 :

  • 사용자가 전체 폭 캔버스 응용 프로그램에 간다, 그는이 자신의 권한을 부여하고 그가
  • 을 투여 년대 fanpages 중 하나에 탭을 추가 할 수 있도록 허용합니다
  • 모든 Facebook 사용자가 해당 팬 페이지로 이동하고 탭을보고 해당 팬 페이지의 내용을 표시합니다 (팬 페이지 ID를 알아야하는 이유입니다).
  • 팬 페이지 관리자가 무언가를 바꾸고 싶다면 그는 전체 너비 캔버스와 내 서비스에 로그인하십시오 (여기에 그가 팬 페이지에서 보여주고 싶은 것을 저장하는 곳입니다)
  • 당신은 페이지의 ID를 얻을 수 있습니다 (AN 탭 iFrame을에) 구문 분석 서명 요청에서
+0

[내 페이지 캔버스 앱을 설치 한 페이지를 어떻게 찾을 수 있습니까?] (http://stackoverflow.com/questions/5587784/how-can-i-find-out-what-page -has-installed-my-facebook-canvas-app) – ifaour

+0

캔버스 앱이 탭 앱과 다릅니다. 예를 들어, 탭 응용 프로그램에는'signed_request'가 없습니다. – pawlik

+1

위의 답변에서 캔버스 앱에 대해 이야기하는 것이 아닙니다. 다음은 내 제안 사항입니다. 1) 앱 설정을 두 번 확인하십시오. 2) 리다이렉션을하고 있지 않은지 확인하십시오. 그렇지 않으면 signed_request가 손실됩니다! 3)이 스레드를 확인하십시오. (http://forum.developers.facebook.net/viewtopic.php?id=91179) – ifaour

답변

3

- 내용은 다음 (PHP의에서 print_r의 출력)과 유사 할 것입니다 : 자세한 내용은

stdClass Object 
(
    [algorithm] => HMAC-SHA256 
    [issued_at] => xxxxxxxxxx 
    [page] => stdClass Object 
     (
      [id] => FAN_PAGE_ID // target page id 
      [liked] => 1  // is the user a fan 
      [admin] =>   // is the user an admin 
     ) 

    [user] => stdClass Object 
     (
      [country] => ie 
      [locale] => en_GB 
      [age] => stdClass Object 
       (
        [min] => 21 
       ) 

     ) 

) 

를 참조하십시오 http://developers.facebook.com/docs/authentication/signed_request/

+0

문제는 탭 응용 프로그램의 $ _REQUEST에'signed_request'가 포함되어 있지 않습니다 (그러나 캔버스 모드에 있음). 그렇습니다). 그것을 어떻게 얻을 수 있습니까? – pawlik

+2

'signed_request' 매개 변수는 초기 탭로드에서만 전달됩니다. 탭 iFrame에서 리디렉션이 발생하지 않았습니까? – jBit

관련 문제