0

据我了解,Facebook 的 FBML 应该呈现 html。但我的不是。这是我在浏览器中查看页面后的源代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">  
<head id="Head1" runat="server"> <title>test</title> 
</head>  
<body onload="initFB();">
    <script src="http://static.new.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php"
        type="text/javascript"></script>       


        <fb:login-button v="2" size="medium" onlogin="window.location='test.aspx'">Login with your Facebook account</fb:login-button>


    <script type="text/javascript" language="text/javascript">
        function initFB() {
            FB_RequireFeatures(["XFBML"], function(){
                FB.init("464 ... my api key here ... b62", "xd_receiver.htm");
            });}
    </script>
</body>  
</html>

这是页面:http ://www.rebelstudent.com/test.aspx

会不会是服务器?我的主机是否以某种方式阻止与 Facebook 的通信有什么变化?没有意义,因为 facebook 连接有点工作......弹出窗口不会消失。我很确定这是因为这些 FBML 标签没有被正确渲染,所以“onlogin”函数没有被调用......

Anway,我是新来的。感谢任何帮助,因为 facebook 开发者论坛似乎已经死了。

4

4 回答 4

1

我没有在 Facebook 上做任何工作,所以我没有直接的答案,抱歉。但是,您是否尝试过从“Hello World”应用程序开始?基本上删除 Facebook 并非绝对必要的所有内容,并尝试在屏幕上显示文本“Hello World”。删除脚本、标题、fb 按钮等。

如果您能够让“Hello World”正常工作,那么只需重新添加应用程序的一小部分,直到它中断。然后你会确切地知道是什么破坏了输出。

如果您无法让“Hello World”工作,那么您就缺少一个基本要求。也许其他人会知道那是什么。

于 2009-11-11T00:24:38.300 回答
1

好吧,看来我需要始终在我的域前使用“www”。那是我的问题。rebelstudent.com/test.aspx 不起作用,但 www.rebelstudent.com/test.aspx 可以。感谢大家的帮助!

于 2009-11-16T17:05:37.377 回答
0

问题很可能是您的画布渲染方法设置为 IFrame(而不是 FBML)。

  • 去这里: http: //www.facebook.com/developers/apps.php
  • 点击“编辑设置”
  • 在左侧导航中选择“画布”
  • 在“画布设置”标题下,为“渲染方法”选择“FBML”
于 2009-11-11T00:31:59.360 回答
0

FB_RequireFeatures(["XFBML"], function() { FB.Facebook.init("key", "/xd_receiver.htm"); FB.Connect.requireSession(); FB.ensureInit(function() { FB.Connect. showPermissionDialog("offline_access,read_stream", function(x) { alert(x); window.location = "/myAuthorizeApp"; }); }); });

它与您尝试实现的功能完全不同,但我发现我需要 XFBML 才能使其他 JS 函数正常工作,这很奇怪。另外,请查看渲染 XFBML 服务器端。

于 2009-11-11T00:41:28.847 回答