Убедитесь, что у вас есть: (некоторые из http://wiki.developers.facebook.com/index.php/Connect/Setting_Up_Your_Site#Referencing_Facebook_Connect_on_Your_Site)
- Создан xd_receiver.htm, и что он находится в корне вашего домена
- Содержит FeatureLoader.js.php в верхней части ТЕЛА вашего документа
- Добавлен JavaScript в вопросе (например, FB_RequiresFeatures и т. Д.) Внизу вашего документа
Пример кода, который в настоящее время работает нормально в моем приложении:
<script type="text/javascript">
window.onload = function() {
FB_RequireFeatures(["XFBML", "Connect"], function() {
FB.Facebook.init("...my api key...","xd_receiver.htm");
FB.CanvasClient.syncUrl();
});
};
</script>
Вы можете опустить "XFBML" из вызова FB_RequireFeatures, а также изменить путь на xd_receiver.htm, и он должен работать нормально.
Кроме того, дважды проверьте, что URL-адрес приложения для подключения (настроенный с помощью приложения для разработчиков в Facebook) указывает на родительский файл xd_receiver.htm. Итак, если ваше приложение размещено на http://www.mydomain.com,, то, глядя на примеры кода, ваш xd_receiver.htm будет иметь значение http://www.mydomain.com/xd_receiver.htm, и вы захотите иметь http://www.mydomain.com в качестве соединения URL.
Если это по-прежнему не работает, попробуйте установить Firebug (или аналогичный инструмент), чтобы взглянуть на сетевой трафик. Когда я заставлял это работать, API Javascript Facebook молча завершал работу, и только проверяя запросы, идущие туда-сюда, я обнаружил, что Facebook не понравился мой URL-адрес для подключения.
Чтобы проверить, что все работает, я хотел бы использовать
FB.Connect.streamPublish();
Скорее, чтобы строка, которую вы разместили, должна была всплыть в диалоговом окне и явно приведена в качестве рабочего примера. Я не уверен, что произойдет, если вы просто передадите пустую строку в качестве аргумента.
Наконец, есть много приложений Facebook на основе IFrame - если вы обнаружите одно, которое делает то, что вам нравится, вы всегда можете взглянуть на их Javascript, чтобы узнать, как они этого добились. Или, другими словами, Facebook полон примера кода приложения IFrame.