Неверные учетные данные, использующие URL Heroku в качестве URL холста - PullRequest
2 голосов
/ 21 октября 2011

Я использую Heroku для создания php-приложения на Facebook.Я хочу, чтобы URL-адрес Heroku был URL-адресом Canvas в моем приложении.Однако, когда я помещаю URL-адрес на страницу «Основные», а затем пытаюсь открыть свое приложение, перейдя на http://apps.facebook.com/status_related_test,, на холсте отображается «Неверные учетные данные» и перенаправляется на URL-адрес приложения, https://youngwarrior-3712.herokuapp.com .

Есть идеи, что я могу делать неправильно или как это исправить?

ETA:
Когда я перехожу непосредственно к ссылке на приложение(https://young -warrior-3712.herokuapp.com), я могу успешно войти в систему.Только когда я пытаюсь перейти на страницу приложения Facebook, он не работает.

Ответы [ 4 ]

4 голосов
/ 03 ноября 2011

норабора, я получил решение для этого в другом посте, после долгих часов мучений я наконец-то сделал это!это ссылка на пост, на который я ответил: Ответ на перенаправление в холсте приложения FB

Надеюсь, вы найдете его полезным ... Удачи!

0 голосов
/ 17 января 2012

У меня возникла похожая проблема при попытке включить мое приложение во вкладку страниц в Facebook.Ответом на проблему является редактирование FBUtils.php.

Найти:

      echo("<script> window.location.href='" . $authorize_url . "'</script>");

Заменить на:

echo("<script> window.location.href='" . $authorize_url . "'</script>");

Эта строка находится в строке 94FBUtils.php

0 голосов
/ 21 ноября 2011

Перейдите к функции getHome() в AppInfo.php и найдите следующую строку:

return ($_SERVER['HTTP_X_FORWARDED_PROTO'] ?: "http") . "://" . $_SERVER['HTTP_HOST'] . "/"; 

Вы должны изменить $_SERVER['HTTP_HOST'] на URL-адрес своей страницы холста:

return ($_SERVER['HTTP_X_FORWARDED_PROTO'] ?: "http") . "://" . "apps.facebook.com/yourappname"  . "/"; 

где yourappname должно быть пространством имен вашего приложения.

Обратите внимание, что если вы примените эти изменения, вы не сможете использовать страницу heroku вашего приложения, поскольку она будет перенаправлена ​​на страницу холста.

0 голосов
/ 01 ноября 2011

Попробовал сам, index.php не может получить токен $ в строке 35 при загрузке страницы.

$token = FBUtils::login(AppInfo::getHome());
if ($token) {
...
} else {
  // Stop running if we did not get a valid response from logging in
  exit("Invalid credentials");
}

Используйте процедуру из http://developers.facebook.com/docs/authentication/, чтобы определить причину сбоя FBUtils :: login.

В качестве альтернативы вы можете использовать Facebook PHP SDK (http://developers.facebook.com/docs/reference/php/), который уже имеет функции, такие как «Facebook :: getLoginUrl», и обойти эту ошибку.

...