2009-02-15 3 views
1

Я разрабатываю приложение Facebook в fb:iframe. Я не хочу использовать feed_publishUserAction, так как для этого требуется ключ сеанса. Следовательно, пытается использовать FB.Connect.showFeedDialog.Звонок на неопределенную функцию showfeeddialog() для FB.Connect.showFeedDialog

Можно ли использовать последний?

Может ли кто-нибудь предложить пример, чтобы использовать его, поскольку я получаю сообщение об ошибке Call to undefined function showfeeddialog().

Должен ли я обновлять свою библиотеку? Любые другие предложения?

ответ

4

Прежде всего, необходимо убедиться, что библиотека клиента включаются:

<script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php" type="text/javascript"></script> 

Это не должно быть в страницы HTML, но в теле. Из документов:

Примечание: Вы должны включить <script> тег, который загружает FeatureLoader в начале вашего <body> элемента. FeatureLoader может записывать элементы body непосредственно> в документ, который, если он происходит в элементе <head>, сообщается как ошибка некоторыми браузерами.

Как вы называете эту функцию? Это должно выглядеть примерно так:.

FB.Connect.showFeedDialog(123456789, data); 

(число является шаблон идентификатор шаблона вы хотите опубликовать в, созданный в фейсбуке или зарегистрированы АНИ «данные» должны быть в формате JSON вы будете заполнить указанный шаблон с).

На вещи, чтобы быть в курсе, что вы должны убедиться, что клиентская библиотека готова к року, прежде чем вызывать какую-либо функцию от него:

FB.ensureInit(function() { 
    // -- now library is officially ready 
}); 

или проверить Waitable класс.

Помните: вы должны войти в систему через Facebook, чтобы использовать форму showFeedDialog. Кроме того, работая с Connect API всю неделю ... все равно очень beta и требует многочисленных обходных решений. Вы должны опубликовать часть своего кода, чтобы мы могли помочь дальше.

+0

спасибо за это! FB.ensureInit() решил мои проблемы. –

Смежные вопросы