-1

我正在尝试使用 javascript sdk 在我们的网站上呈现 XFBML 表单,但我不断收到

无法加载 的注册表单。您之前可能在 Facebook 上屏蔽了此应用。转到您的 Facebook 隐私设置以取消阻止此应用。(错误:'client_id' 无效。)

我的应用程序已注册并具有正确的 ID。

代码看起来像:

<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId      : '118446328234891', // App ID
      channelUrl : '//www.sakshum.org/channel.html', // Channel File
      status     : true, // check login status
      cookie     : true, // enable cookies to allow the server to access the session
      xfbml      : true  // parse XFBML
    });

    // Additional initialization code here
  };

  // Load the SDK Asynchronously
  (function(d){
     var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement('script'); js.id = id; js.async = true;
     js.src = "//connect.facebook.net/en_US/all.js";
     ref.parentNode.insertBefore(js, ref);
   }(document));
</script>
<script src="https://connect.facebook.net/en_US/all.js#appId=118446328234891&xfbml=1"></script>

<fb:registration fields="name,birthday,gender,location,email" redirect-uri="http%3A%2F%2Fwww.sakshum.org%2FFbValidation" width="530">
</fb:registration>

如果我只使用 iframe 使用非 xfbml 版本,那么一切都可以正常工作。

4

2 回答 2

2

看起来问题是使用编码的redirect_uri。将其更改为正常 url 解决了这个问题。

于 2012-09-07T18:34:24.070 回答
0

重定向 uri 必须与 Facebook 应用程序中的“站点 URL”设置相匹配。

于 2012-09-11T08:37:53.340 回答