Почему эта разметка XFBML, встроенная в приложение iframe'd, не отображает ничего? - PullRequest
4 голосов
/ 17 июля 2009

Я пытался заставить это приложение работать на Facebook, но В приложении ничего не отображается, кроме

"Hi this is some sample text."
A box stroked in red.  "I am My photo " and a default silhoutte of a Facebook user
as the photo.

Ниже приведен исходный код рамки холста:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns=http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
<head>

    <title>Cutting Masala Chai Invitation</title>
</head>
<body>

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

Hi this is some sample text.

<fb:serverfbml style="border: 1px solid red; min-width: 700px;min-height: 400px">
    <script type="text/fbml">
        <fb:fbml>
            <fb:request-form 
                action="http://www.cuttingmasalachai.com/facebook" 
                method="POST" 
                invite="true" 
                type="Cutting Masala Chai" 
                content="&lt;fb:name uid=&quot;605869619&quot; firstnameonly=&quot;true&quot; shownetwork=&quot;false&quot; /&gt;wants to invite you share stories and vote for celebrities for the book Cutting Masala Chai,&lt;fb:req-choice url=&quot;http://apps.facebook.com/cuttingmasalachai&quot; label=&quot;Add Cutting Masala Chai&quot; /&gt;"> 
                <fb:multi-friend-selector 
                    max="20" 
                    actiontext="Invite your friends to Cutting Masala Chai." 
                    showborder="false" 
                    rows="5">
                </fb:multi-friend-selector>
            </fb:request-form>
        </fb:fbml>
    </script>

</fb:serverfbml>

I am <fb:name uid="605869619" firstnameonly="true" shownetwork="false"></fb:name>
My photo <fb:profile-pic uid="605869619"></fb:profile-pic>



<script type="text/javascript"> 
    FB_RequireFeatures(["XFBML"], function(){

        console.log('fb_requirefeatures function got called');
        FB.Facebook.init("0acf016613ca171e9665f128d318fd75", "/facebook/xd_receiver.html"); 
    });
</script>
</body>
</html>

Настройки приложения:

Буду благодарен за любую помощь. Спасибо.

Ответы [ 4 ]

4 голосов
/ 17 июля 2009

Пара других людей столкнулись с той же проблемой:

Facebook Forum Обсуждение этой проблемы.

Проблема была с URL-адресом подключения и базовым доменом, который я использовал, и МАЛЕНЬКИМ немного терпения.

Распространение настроек на серверы занимает несколько минут в Facebook. Мне просто нужно было подождать немного больше после установки URL подключения и базового домена на эти:

Connect URL: http://www.cuttingmasalachai.com/
Base Domain: cuttingmasalachai.com

Надеюсь, это поможет любому, кто сталкивается с этой проблемой. Приветствия. Кроме того, 5 пива для adougherty и krisoye с форумов для размещения проблемы и предоставление решений.

1 голос
/ 09 августа 2009

Я читал в вики, что принятый путь xd_receiver.html зависит от браузера, и Firefox принимает полный путь, в то время как IE Opera и Safari хотят путь относительно текущей страницы (например, «xd_receiver.html»). или "../xd_receiver.html").

Я должен поблагодарить вас, потому что ваш совет по настройке URL и доменного имени в Connect спас мой день: -)

Чао, Роберто

0 голосов
/ 03 марта 2010

Настройки в приложении в коннекте Соедините URL, как ваш URL обратного вызова Canvas (http://www.baseurl/name/), Базовый домен без www (baseurl), и это в справке по JavaScript.

<script type="text/javascript"> 
    FB_RequireFeatures(["XFBML"], function() {
        console.log('fb_requirefeatures function got called');
        FB.Facebook.init("you_application_id)", "invite_friends.tpl"); 
    });
</script>

Добавьте это в конец файла, где

<fb:serverfbml style="border: 1px solid red; min-width: 700px;min-height: 400px">

Весь мой код находится в файле invite_friends.tpl.

0 голосов
/ 25 октября 2009

У меня была очень похожая проблема, и она оказалась вызвана тем, что fbml не включен по умолчанию . Вместо этого приложения iframes.

Я включил его (в настройках приложения есть выбор радио fbml / iframe) и обнаружил, что есть причина: iframes быстрее.

Документация по iframes в любом случае становится недостаточной и смешанной со страницами, где говорится только о Facebook Connect (очень похоже, если не то же самое, во многих аспектах, да)

Документация Fbml сейчас кажется лучшей. (И приложения fbml выглядят хорошо с меньшими усилиями)

...