Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook Connect FBML不呈现HTML?_Facebook_Connect - Fatal编程技术网

Facebook Connect FBML不呈现HTML?

Facebook Connect FBML不呈现HTML?,facebook,connect,Facebook,Connect,据我所知,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的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>

试验
使用您的Facebook帐户登录
函数initFB(){
FB_需求特性([“XFBML”],函数(){
init(“这里是464…我的api密钥…b62”,“xd_receiver.htm”);
});}
页面如下:

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


安威,我是新手。非常感谢您的帮助,因为facebook开发者论坛似乎已经死了。

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

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


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

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

  • 到这里:
  • 单击“编辑设置”
  • 在左侧导航栏中选择“画布”
  • 在“画布设置”标题下,为“渲染方法”选择“FBML”
FB_需求特性([“XFBML”],函数(){ FB.Facebook.init(“key”,“/xd_receiver.htm”); FB.Connect.requireSession(); FB.ensureInit(函数(){ FB.Connect.showPermissionDialog(“脱机访问,读取流”,函数(x){alert(x);window.location=“/myAuthorizeApp”;}); }); });


它的功能与您试图实现的功能并不完全相同,但我发现我需要要求XFBML使其他JS函数正常工作,这很奇怪。。此外,还将研究如何在服务器端呈现XFBML

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

嗯,它现在似乎在工作。太令人困惑了。。。我想我错了,应该通过Facebook的javascript转换成常规html?是有效的xhtml。我明白了,我想我在某个地方读到Facebook会以某种方式用html或类似的东西替换它的标签。我想这可能是我的facebook连接无法工作的原因。现在我怀疑这是另外一回事。谢谢你的建议,但我的应用程序一直设置为FBML,目前设置为FBML。你可以将应用程序的基本域设置为rebelstudent.com,这应该可以跨所有子域(“www”或其他)工作啊,好的。该死。我总是忽略简单的事情。谢谢