2010-03-05 3 views
0

안녕 얘들 아, 나는 페이스 북 페이지의 탭에 삽입하고 싶은 작은 사이트를 개발했다. Facebook IFrame on page canvas?

은 이전에 내가 iframe에로드 할이 코드를 사용, 그것은 큰 일 :

 <a onClick="outside_location.setInnerFBML(link_1);" style="cursor: pointer;">Link 1</a> | <a class="red" onClick="outside_location.setInnerFBML(link_2);" style="cursor: pointer;">Link 2</a> 

    <div id="outside_location"></div> 
    <fb:js-string var="link_1"><fb:iframe width="760" height="1280" frameborder='0' src='http://www.WebWhispers.in' /></fb:js-string> 
    <fb:js-string var="link_2"><fb:iframe width="760" height="1280" frameborder='0' src='http://google.com/' /></fb:js-string> 

    <script type="text/javascript" charset="utf-8"> 
    var outside_location = d 

document.getElementById('outside_location'); 
</script> 

그러나, 작동이 중지되었습니다. 나는 facebook이 iframe을 페이지의 내부에서만 허용한다고 생각하지 않는다.

FBML을 배우지 않고 어떻게이 페이지를로드 할 수 있습니까? 이 사이트는 Jquery를 사용하므로 어쨌든 FBML을 사용할 수 없습니다.

응용 프로그램에서 iFrames를 사용할 수 있다는 것을 알고 있습니다. 응용 프로그램을 만든 다음 어떻게 든 응용 프로그램을 페이지 탭에 포함시킬 수 있습니까?

답변

1

아니요. 탭 페이지에는 iFrame이 포함될 수 없습니다. FBML과 FBJS를 사용하여 작성해야합니다.

이유 중 하나는 페이스 북이 탭 페이지를보고 누가이를 감지 하는지를 원하지 않는다는 것입니다. 이러한 이유로 탭 페이지의 모든 요청 (이미지 포함)은 Facebook을 통해 프록시 처리됩니다. iframe이 허용되면 응용 프로그램은 누가 그것을 보았는지 탐지 할 수있게되어 페이스 북 사용자에게 프라이버시 문제를 제기하게됩니다.

+0

괜찮습니다. 어떻게 응용 프로그램이 그걸로 사라지나요? – wesbos

+0

그들은 그렇지 않습니다. 탭 페이지에는 iframe이 들어갈 수 없습니다. 탭 페이지에 동적 콘텐츠가있는 데 관심이 있으면 FBJS (샌드 박스 처리 된 자바 스크립트의 특수 버전)를 사용하거나 Flash를 사용할 수 있습니다. 플래시를 사용하는 경우 사용자는 먼저 플래시 응용 프로그램을 클릭해야합니다 (위에서 언급 한 것과 동일한 개인 정보 보호상의 이유로). – Gdeglin

+0

아, 이해합니다. 이 사람들은 어떤 경로를 사용 했습니까? http://www.facebook.com/CarrotCreative#!/CarrotCreative?v=app_176990672178 – wesbos

0

이것은 Facebook의 정책 변경 또는 더 많은 버그 일 수 있습니다. 스크립트 오류가 발생하기 때문에 정책 변경이 될 것 같지는 않지만 정책 변경은 렌더링되기 전에 코드를 제거 할 가능성이 높습니다.

여기에 a bug report you can add votes to and follow here이 있습니다.

+0

그 버그는 이것과 관련이 없습니다. 이것은 버그가 아닙니다. fb : iframe에 대한 문서는 특별히 페이지에서 사용할 수 없다고 말합니다. http://wiki.developers.facebook.com/index.php/Fb:iframe " 태그는 프로필 페이지 (즉, 응용 프로그램 탭과 프로필 상자)에 사용할 수 없습니다." – Gdeglin

+0

버그는 그것은 어제 페이스 북 플랫폼 팀에 의해 확인되었습니다 : http://forum.developers.facebook.com/viewtopic.php?pid=209031#p209031. Wes 게시 된 스크립트는 FBJS를 사용하여 fb : iframe을로드하는 꽤 잘 알려진 해결 방법입니다. 로딩은 사용자 동작 (예 : 클릭)에 의해 트리거되어야하므로 사용자 추적에 사용할 수 없습니다. –