Приложение Facebook не работает в SDK facebook.php - PullRequest
1 голос
/ 26 сентября 2011

Не уверен, почему это не работает, и надеялся, что кто-то сможет указать мне правильное направление.

У меня есть приложение на вкладке Facebook, которое должно отображать различное содержимое в зависимости от того, нравится ли нам пользователь или нет.

require_once('src/facebook.php');
$app_id = "142214XXXXXXXX";  <--this is correct just hidden
$app_secret = "31275c8895XXXXXXXX";
$facebook = new facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
'cookie' => true
));
$signed_request = $facebook->getSignedRequest();
$like_status = $signed_request["page"]["liked"];

//just for testing (nothing shows up, nor does print($signed_request)
echo "the page is ".$page_id;

if(!$like_status){
echo "Please LIKE US to get this offer or check back on Sept 27";
} else {
echo '<img src="https://www2418.ssldomain.com/frightfurnace/SLOSSbogo.jpg"/><BR />
<a href="http://www.frightfurnace.com/coupon.asp">Printable Page</a>';
}

Теперь я знаю, что SDK установлен и работает правильно, так как он работает с примером: http://www.frightfurnace.com/Facebook/example.php

Я также убедился, что использую абсолютные URL в настройках приложения Facebook. я использую http://www.frightfurnace.com/Facebook/coupon.php

То же самое с SSL.

Любые идеи, вроде как заглохли. Вся помощь оценена.

Ответы [ 2 ]

0 голосов
/ 27 октября 2011

Еще одна вещь, которую нужно проверить: URL вкладки / холста должен быть ТОЧНО таким же, как требуется. Если имеется перенаправление на другую страницу, подписанный запрос и другие значения не будут отправлены. Вы можете проверить с помощью анализатора браузера, если вызов страницы перенаправляет 300 (301/302 и т. Д.), То вам нужно изменить на то, на что он перенаправляет.

Примеры:

https://example.com/ может потребоваться https://www.example.com/ (добавить www. Или удалить www. В зависимости от настройки сервера)

www.example.com / может потребоваться www.example.com/index.php (добавить index.php или нужную страницу).

Проверьте, правильно ли вы используете http: // и https: // в URL-адресах, и что https: // возвращает действительную страницу.

0 голосов
/ 27 сентября 2011

Хорошо нашел ответ, если кому-то еще это нужно.

Зайдите в свои приложения на Facebook https://developers.facebook.com/apps/

Перейти к редактированию настроек

Слева щелкните Advanced

signature_request для Canvas: (сделайте его включенным) Вкладка страницы iframe: (включено)

В разделе Настройки холста убедитесь, что тип холста * 1012 плавающий фрейм *

Казалось, работает на меня.

...