Facebook подключиться с помощью FB.Connect.showFeedDialog без fb: кнопка входа - PullRequest
2 голосов
/ 20 июля 2009

У меня есть приложение facebook, настроенное как iframe, и я пытаюсь использовать FB.Connect.showFeedDialog для публикации историй в фиде пользователей. Я работаю с этим примером http://papermashup.com/using-facebook-connect/, который не работает, пока вы не войдете в систему, используя кнопку fb: login-button.

Я пытался изменить код в течение нескольких дней, и мне было интересно, можно ли вообще обойтись без этой кнопки входа, если это приложение Facebook Iframe.

Любая помощь и указатели очень ценятся.

1 Ответ

1 голос
/ 20 июля 2009

Это определенно возможно без fb:login-button. На самом деле, если вы создаете приложение iframe, вам, вероятно, вообще не нужен fb:login-button. Все, что вам нужно, это загрузить библиотеки Facebook Connect , а затем сделать вызов инициализации , например, (используя, конечно, свой собственный ключ API):

<script src="http://static.ak.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php" type="text/javascript"></script>
<script type="text/javascript">
    FB.init("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "/xd_receiver.htm");
    window.addEvent('domready',function(){
        FB_RequireFeatures(["CanvasUtil"], function(){
            FB.XdComm.Server.init("/xd_receiver.htm");
        });
    });
</script>

Обратите внимание, что у меня есть немного MooTools, чтобы убедиться, что вызов RequireFeatures происходит после того, как DOM будет готов. Вы можете придерживаться примеров в инициализирующих документах , если хотите.

В любом случае, после загрузки и инициализации библиотек FB Connect у вас должен быть полный доступ к методам API, предоставляемым библиотекой JS, и вы можете просто сделать это:

var user_message_prompt = "Write something here!";
var user_message = {value: "Default message"};
if (FB.Connect) {
    FB.Connect.showFeedDialog(templateBundle, templateData, null,null,null,FB.RequireConnect.require,null,user_message_prompt,user_message);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...