Facebook JS SDK显示:页面无效

时间:2013-06-07 13:35:37

标签: c++ facebook winapi oauth facebook-javascript-sdk

我想在同一网页上打开 Facebook的oauth 对话框。

实际上,我在我的WIN32(C ++)项目中嵌入了一个静态html页面,而我正在使用Facebook的 JS SDK 来执行 oauth 操作作为IE不能超过2K(约)的网址长度。

显示选项弹出式广告& 触摸工作正常,但选项页面& iframe 无效。

这是代码;

<div id="fb-root"></div>
<script>
  window.fbAsyncInit = function() {
  FB.init({
    appId      : '*************', // App ID
    channelUrl : 'file:///D:/channel.htm', // Channel File
    status     : true, // check login status
    cookie     : true, // enable cookies to allow the server to access the session
    xfbml      : true  // parse XFBML
  });

    FB.ui(
    {
        method: 'oauth',
        name: 'Facebook Dialogs',
        link: 'http://localhost',
        picture: 'http://fbrell.com/f8.jpg',
        caption: 'Reference Documentation',
        description: 'Dialogs provide a simple, consistent interface for applications to interface with users.',
        display: 'page'
    },
     function(response) {

        if (response && response.post_id) {
          //alert('Post was published.');
        } else {
          //alert('Post was not published.');
        }
      }
    );
  };
</script>

任何人都可以告诉我上面的代码中缺少的是在同一网页中打开oauth对话框。

谢谢, SKAR。

1 个答案:

答案 0 :(得分:0)

我遇到了a similar problem in the past

这是我得到的答案:

  

JS SDK旨在用于网站(根据服务定义,可通过http或https访问),我们不打算支持使用file:或任何其他协议。   这与一般的插件一致,其中http / https URI可用作标识符(开放图形等),但file:// URI不是。

     

您可以尝试在Web可访问文档中初始化SDK,包括使用iframe - 请注意,您必须添加逻辑以确保正确调整大小。

作为Facebook bug report的答案。