2012-01-02 3 views
0

У меня есть следующая простая тестовая страница и попытка добавить кнопку входа в FB. Это будет частью стенда на веб-сайте, а не на холсте. Если текущий пользователь уже зарегистрирован на FB, отображается список друзей, использующих приложение, но кнопка входа в систему отсутствует. Если текущий пользователь не войдет в систему на FB, я ничего не получаю. Любые идеи? Вот моя страница ... Я сейчас запускаю ее под локальным хостом.Кнопка входа в систему не отображается, когда не вошел в систему

<body> 
     <div id="fb-root"> 
     </div> 
     <!-- Loading of FB SDK --> 
     <script type="text/javascript"> 
      window.fbAsyncInit = function() { 
       FB.init({ 
        appId: '319067848117743', // App ID 
        channelUrl: 'http://localhost/TestApp/channel.aspx', // Channel File 
        status: true, // check login status 
        cookie: true, // enable cookies to allow the server to access the session 
        xfbml: true // parse XFBML 
       }); 
      }; 

      // Load the SDK Asynchronously 
      (function (d) { 
       var js, id = 'facebook-jssdk'; if (d.getElementById(id)) { return; } 
       js = d.createElement('script'); js.id = id; js.async = true; 
       js.src = "http://connect.facebook.net/en_US/all.js"; 
       d.getElementsByTagName('head')[0].appendChild(js); 
      } (document)); 
     </script> 
     <!-- Display FB Login Button --> 
     <script>  (function (d, s, id) { 
       var js, fjs = d.getElementsByTagName(s)[0]; 
       if (d.getElementById(id)) return; 
       js = d.createElement(s); js.id = id; 
       js.src = "http://connect.facebook.net/en_US/all.js#xfbml=1&appId=319067848117743"; 
       fjs.parentNode.insertBefore(js, fjs); 
      } (document, 'script', 'facebook-jssdk'));</script> 
     <div class="fb-login-button" data-show-faces="true" data-max-rows="2" data-scope="user_about_me,publish_stream,read_stream"> 
     </div> 
    </body> 

ответ

0

Сначала вам не нужно вставлять загрузчик async js дважды, просто избыточный код - это все. Во-вторых, я не знаю, как этот код мог перечислить друзей, я не вижу кода для него.

1) Вы говорите, что ожидаете вход в систему, даже если человек уже вошел в систему? Плагин кнопки входа в систему, который вы используете, не работает. Он будет отображаться только в том случае, если пользователь не войдет в ваше приложение. Смотрите примечание говоря «. Примечание: Если пользователь уже зарегистрирован, ни одна кнопка Логин не отображается» на https://developers.facebook.com/docs/reference/plugins/login/

2) Вы также говорите, что вы не можете увидеть любую кнопку входа, когда пользователь вошел в систему из Facebook. Это странно, но, не видя всего кода, я не знаю, что помочь с этой частью вашего вопроса.

+0

Я не уверен, какой код точно повторяется. Я попытался следовать документации. Часть ниже кнопки Я нашел ее на странице для плагина входа. И код выше, который я нахожу на странице, описывающей, как включить SDK jscript в FB, который упоминается как предпосылка плагина входа. Что касается списка друзей, я говорю о картинах друзей, уже использующих приложение. 1) Возможно, я ошибаюсь, но не важно, что я должен видеть кнопку, когда текущий пользователь не вошел в FB, верно ?. 2) Это весь код, который у меня есть. – papadi

+0

Вам понадобится больше кода, чем то, что вы отправили, чтобы он работал. Я не вижу там никакого кода, чтобы перечислять друзей. Можете ли вы поделиться ссылкой на свою страницу, где мы можем посмотреть ваш код? – DMCS

+0

Спасибо за помощь. Возможно, моего кода недостаточно, но это то, что у меня есть сейчас. Все, что вы видите в начальном посте. Просто скопируйте это на пустую страницу htm, и все. – papadi

0

Это ваше приложение в режиме песочницы? Попробуйте отключить режим песочницы из конфигурации приложения facebook.