Facebook分享显示错误'鉴于URL不被允许'

时间:2016-01-27 04:28:37

标签: facebook api

我为facebook share尝试了以下代码

<p>
<a  rel="nofollow" target="_blank" class=" icon_facebook ">Share</a>
</p>




jQuery(document).ready(function($) {
 window.fbAsyncInit = function() {
    //SDK loaded, initialize it
    FB.init({
        appId      : 'your-app-id',
        xfbml      : true,
        version    : 'v2.5'
    });
};

//load the JavaScript SDK
(function(d, s, id){
    var js, fjs = d.getElementsByTagName(s)[0];
    if (d.getElementById(id)) {return;}
    js = d.createElement(s); js.id = id;
    js.src = "//connect.facebook.net/en_US/sdk.js";
    fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));

 jQuery('.icon_facebook').click(
function(){
    FB.ui(
      {
    method: 'share',
    name: 'Facebook Dialogs',
  link: 'https://developers.facebook.com/docs/dialogs/',
  picture: 'http://fbrell.com/f8.jpg',
  caption: 'Reference Documentation',
  description: 'Dialogs provide a simple, consistent interface for applications to interface with users.'

},
function(response) {
  if (response && response.post_id) {
    alert('Post was published.');
  } else {
    alert('Post was not published.');
  }
}
)

});

}

);

然后显示错误。

  

应用程序配置不允许使用URL:一个或多个   应用程序的设置不允许使用给定的URL。它必须匹配   网站URL或Canvas URL,或域必须是子域   App的一个域名。

两个facebook中的共享网址都已准备好登录和注销状态,就像https://www.facebook.com/v2.5/dialog/share?app_id=MY APP ID ,..... 但在其他网站中,工作共享页面网址格式不同。如果没有登录,则显示为

https://www.facebook.com/login.php?skip_api_login=1&api_key=..

当有人登录到faccebook时,它显示为https://www.facebook.com/v2.3/dialog/share?redirect_uri=https%3A%2F%2Fwww.facebook.com%2Fdialog%2Freturn%2Fclose&display=popup&href=

  

为什么我的Facebook分享网址不同?我错过了任何代码部分吗?

我的代码中有错误吗?请帮忙。

1 个答案:

答案 0 :(得分:0)

来自评论:

  1. 确保您在FB init中拥有正确的appId;和
  2. 共享网址必须列在Facebook Dveloper控制台上App Settings下的App Domains输入中。