Отображение Facebook в Iframe на моем сайте - PullRequest
1 голос
/ 23 февраля 2011

Я хочу показать веб-страницу Facebook на моем сайте?

<html>
<body>
    <iframe src="http://www.facebook.com/" name="iframe_a"></iframe>
</body>
</html>

Это просто показывает мне изображение Facebook, но не фактическое содержание. Как я могу это сделать?

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

Ответы [ 7 ]

6 голосов
/ 23 февраля 2011

Это код Facebook, встроенный в его страницы.

if (top != self) { try { if (parent != top) { throw 1; }

Этот код проверяет, встроен ли в iframe его блок, загружающий другие данные, а не загружает ссылку, по которой вы можете щелкнуть с изображением.

<script type="text/javascript">
        /* <![CDATA[ */if (top != self) { 
           try { if (parent != top) { throw 1; } 
           var disallowed = ["apps.facebook.com","\/pages\/","apps.beta.facebook.com"];
            href = top.location.href.toLowerCase(); 
              for (var i = 0; i < disallowed.length; i++) {
                  if (href.indexOf(disallowed[i]) >= 0) { throw 1; } 
              } 
          } catch (e) {
             setTimeout(
                   function() {var fb_cj_img = new Image(); 
                      fb_cj_img.src = "http:\/\/error.facebook.com\/common\/scribe_endpoint.php?c=si_clickjacking&m=on\u002509&t=8183";}, 5000); 
        window.document.write("\u003cstyle>body * { display:none !important; }\u003c\/style>\u003ca href=\"#\" onclick=\"top.location.href=window.location.href\" style=\"display: block !important; padding: 10px\">\u003ci class=\"img sp_8dfqpl sx_d67a9a\" style=\"display:block !important\">\u003c\/i>Go to Facebook.com\u003c\/a>");

  /* XRCm4Hhw */ }}/* ]]> *

  </script>
4 голосов
/ 23 февраля 2011

Теоретически должно быть возможно сделать это в следующие шаги:

  1. Получить html на Facebook.com с помощью AJAX.
  2. Удалите нежелательный javascript, на который указывал Зимбабао, или добавьте новый javascript, который отменяет нежелательную функцию.
  3. , а затем выполните document.write, чтобы освободить измененный HTML-код для анализа и рендеринга браузером.

Это тот же принцип, что и переопределение функций Javascript с GreaseMonkey [1]. В [2, 3] вы найдете, как функции могут быть переопределены с помощью Javascript.

2 голосов
/ 23 февраля 2011

Я думаю, что Facebook блокирует его использование в теге iframe.

1 голос
/ 23 февраля 2011

Используйте Facebook API, чтобы получать сообщения на стене, а затем отображать их там, где вам нравится. http://developers.facebook.com/

0 голосов
/ 03 мая 2019

Этот вопрос старый.Теперь все посты на FB имеют встроенный iframe или прямую ссылку

0 голосов
/ 29 января 2013

Iframe ваш контент в Facebook, как это:

<iframe src="http://www.facebook.com/plugins/likebox.phpid=YOURUNIQUEID&amp;width=158&amp;connections=5&amp;stream=true&amp;header=false&amp;height=555" 
        scrolling="no" 
        frameborder="0" 
        style="border:none; overflow:hidden; width:158px; height:555px;" 
        allowTransparency="true">
</iframe>

<div class="fb-like" 
     align="center" 
     data-href="https://www.facebook.com/YOURFBADDRESS" 
     data-send="true" 
     data-width="500" 
     data-show-faces="false" 
     data-font="verdana">
</div>
0 голосов
/ 23 февраля 2011

нет смысла показывать facebook в фрейме на вашем сайте.

, если вы хотите отображать контент Facebook на своей странице, используйте Facebook Badges

...