2012-05-04 5 views
0

저는 일하고있는 페이스 북 앱을 가지고 있습니다.페이스 북의 캔버스에서만 페이지 검색

나는 IndexController에서만 CanvasAuthorize를 사용하여 페이스 북에 대한 승인을하고 있으며 리디렉션 때문에 모든 다른 페이지에서 피하길 원합니다.

다음과 같은 현상이 발생합니다. IndexController가 있으며 [CanvasAuthorize]로 장식 한 색인 작업이 있습니다. 그런 다음 토큰과 함께 페이스 북 사용자를 세션에 저장하십시오. 그래서 다른 페이지에서는 Canvas가 승인 할 필요가 없습니다.

Visual Studio로 디버깅 할 때 다른 페이지에 액세스 한 다음 색인을 생성하면 페이스 북 앱으로 리디렉션되지 않습니다. 그러나 localhost : port를 보여줍니다. 어떻게 시행 할 수 있습니까? 누구나 어떤 페이지가 facebook.com/appname으로 리디렉션되는지 확인하려고 시도합니다.

감사합니다.

답변

1

Facebook에 로그인하지 않았거나 앱을 사용하고 싶다면 사용자를 IndexController로 리디렉션 하시겠습니까?

내가 올바르게 이해한다면 indexController는 Facebook에서 사용자를 인증 한 사람입니다. 다른 페이지는 인증 후에 액세스 할 수 있습니다.

Facebook 앱이 iFrame 앱입니까? 그렇다면 indexController 또는 직접 또는 Apps.Facebook.con/YourApp로 리디렉션되는 Javascript가 필요합니다.

<script> 
if (top == self) 
{ 
     top.window.location = '//apps.facebook.com/yourApp'; 
} 
</script> 
+0

캔버스 앱입니다. 당신은 응용 프로그램에 대한 호스트 이름 등을 알고 있다면, 당신은 페이스 북을 거치지 않고 브라우저로 연결할 수 있습니다. u가 이미 페이스 북에 로그인되어 있다면, 페이스 북 페이지 아래에 앱을 표시하지 않습니다. 나는 그것을 피하고 싶다. – DarthVader

+1

예 위의 javascript 스크립트는 작업을 수행하며 애플리케이션의 모든 페이지에 삽입합니다. –