저는 약간 혼란 스럽습니다. 기본 문제는 내 팬 페이지에서 파이어 폭스에서 잘 작동하는 앱의 아이콘을 클릭 할 때 발생하지만 IE에서는 "이 콘텐츠를 프레임에 표시 할 수 없습니다"라는 오류가 발생하고 크롬에서는 열리지 않습니다. 응용 프로그램 및 빈 간다. 이것은 시험 계정뿐만 아니라 응용 프로그램을 만든 페이스 북 프로필에서 나에게도 일어난 일이다. 이상한 것은 내 다른 페이스 북 계정에서 모든 브라우저에서 완벽하게 작동한다는 것입니다. 앱은 검색이나 최근 앱으로 직접 이동할 때도 작동합니다. 최근에 앱 이름과 보안 ID를 변경하고 내 페이지에 다시 연결했습니다. 앱 설정에서 내 탭 URL이 정확합니다. 캔버스 페이지 상단의 코드는 다음과 같습니다.Chrome에서 오류가 발생했습니다. 즉, 팬 페이지에서 Facebook 앱으로 리디렉션됩니다.
<?php
$app_id = "181247898619054";
$app_secret = "xxxxxxxxxxxxxxxxxxxxxxxxxxx";
$my_url = "https://apps.facebook.com/wellnessq/";
session_register();
session_start();
if (!isset($_REQUEST["code"]))
{
$_SESSION['state'] = md5(uniqid(rand(), TRUE)); //CSRF protection
$dialog_url = "http://www.facebook.com/dialog/oauth?client_id="
. $app_id . "&redirect_uri=" . urlencode($my_url) . "&scope=email&state="
. $_SESSION['state'];
echo("<script> top.location.href='" . $dialog_url . "'</script>");
exit;
}
$code = $_REQUEST['code'];
{
$token_url = "https://graph.facebook.com/oauth/access_token?"
. "client_id=" . $app_id . "&redirect_uri=" . urlencode($my_url)
. "&client_secret=" . $app_secret . "&code=" . $code;
$response = file_get_contents($token_url);
$params = null;
parse_str($response, $params);
$graph_url = "https://graph.facebook.com/me?access_token="
. $params['access_token'];
$user = json_decode(file_get_contents($graph_url));
}
?>
아이디어가 있으십니까? 오류를 직접보고 싶으면 알려주고 어디에서 찾을 지 게시 할 것입니다. 감사.
Chrome에서 스크립트 리디렉션을 원치 않는 경우 궁금한데,이를 하이재킹 시도와 혼동하여 삭제하거나 오류를 표시 할 수 있습니다. – Tim
정말 이상한 부분은 내 페이스 북 계정 중 하나에서만 발생하며 다른 하나는 모든 브라우저에서 완벽하게 정상적으로 작동한다는 것입니다. 쿠키를 모두 삭제하고 다시 시도했지만 성공하지 못했습니다. – Trey