2011-08-18 6 views
3

저는 iframe Facebook 응용 프로그램을 구축 중이며 사용자가 응용 프로그램을 열어서 계속 내 페이지를 좋아해야하는 '게이트'를 설정하고 싶습니다. (클릭 한 후 JavaScript를 사용하여 '계속'버튼을 클릭 할 수있게합니다.)Facebook 사용자가 앱 승인없이 페이지를 좋아하는지 감지합니다.

방문중인 Facebook 사용자가 내 응용 프로그램을 먼저 인증하지 않고 페이지를 좋아했는지 감지 할 수있는 방법이 있습니까? 나는 그래프 api 또는 fql을 사용하여 자신이 좋아하는 것을 쿼리 할 수 ​​있지만 app의 한 부분에 대한 인증 대화 상자를 통해이를 강요하는 것을 피하고 싶습니다. 내가 묻는 이유는이 기능을 허용하는 것으로 보이는 일부 응용 프로그램을 Facebook에서 보았다는 것입니다. 예를 들어

이 페이지의 : http://www.facebook.com/velcrobrand?sk=app_156218351098324

나는 페이스 북의 응용 프로그램에 권한을 부여 할 필요는 없습니다하지만 난 그것을 좋아하거나하지 않은 경우 페이지가 알고있다.

+0

사용자가 이전에 뭔가를 좋아하도록 강요하는 것처럼 보이지만 사용하기가 쉽지 않습니다. 그들이 어떻게 알았 을까요? –

답변

1

나는 이것을 파악하는 데 많은 진전을 보았다. 페이지가 응용 프로그램의 팬 페이지의 탭 NOT 애플리케이션 차 iframe이 페이지 내부에 장착되어있는 경우 위의 링크에 설명

http://www.chilipepperdesign.com/2011/02/15/reveal-fan-gate-like-gate-facebook-iframe-tab-tutorial-with-php

방법에만 작동합니다. 여기

는 '페이지'개체가 존재 여기 http://www.facebook.com/apps/application.php?id=249709505050393&sk=app_249709505050393

: 이것은하지만 난 앞으로 이동 만들 충분 생각하는 이유 http://apps.facebook.com/flipkey/

확실하지 존재하지 않는 '페이지'객체 내 fan/like-gate.

+0

페이지 객체는 탭 페이지와 함께 제공됩니다. 팬 페이지에 호스팅 된 탭이있는 iFrame이고 데이터가 사용자 정의에 유용하기 때문입니다. 캔버스 페이지는 탭에서 완전히 분리 된 엔티티이고 응용 프로그램에는 하나의 캔버스 만 있지만 다양한 팬 페이지에 여러 탭이있을 수 있기 때문에 페이지 객체가 캔버스 페이지에 없습니다. – jBit

+0

아시다시피 사용자가 탭 iFrame으로 전달 된 signed_request의 페이지를 좋아한다면 충분히 쉽게 결정할 수 있습니다. 그러나 사용자가 캔버스에서 페이지를 좋아하는지 확인하려면 권한이 부여 된 사용자가 필요합니다. 캔버스 애플리케이션 내에서 사용자에 관한 정보를 찾으려면 해당 사용자에게 권한이 부여되어야합니다. 따라서 사용자가 페이지를 좋아한다면 당신을 찾고 싶을 것입니다 : 사용자에게 권한을 부여하고 사용자 FQL이 사용자의 페이지를 좋아 하는지를 결정한 다음 적절하게 응답합니다 (즉, 팬 페이지로 리디렉션하거나 앱에 대한 액세스 권한 부여). – jBit

관련 문제