从App

时间:2015-09-03 15:50:14

标签: facebook facebook-javascript-sdk facebook-sharer

我正在尝试允许我的客户的网站在Facebook上共享一个与网站不同的网址。例如:http://www.example.com上有http://www.instagram.com

的共享链接

每当我尝试时,都会收到以下错误:

  

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

我无法看到如何更改应用程序的设置以允许共享不同的URL,尽管我猜它一定是可能的。

以下是我的代码片段,看看是否有帮助:

        // Facebook Share
        $('#facebook-share').on('click', function(e){
            e.preventDefault();

            var url = $(this).attr('data-href');

            FB.ui({
                method: 'share',
                href: url
            }, function(response){
                if (response) {
                    console.log('Facebook post published.');
                } else {
                    console.log('Facebook post was not published.');
                }
            });
        });

1 个答案:

答案 0 :(得分:0)

进一步的研究似乎表明Facebook Apps只能用于一个URL,无论如何。我更改了使用sharer.php的内容:

        // Facebook Share
        $('.facebook-share').on('click', function(e){
            e.preventDefault();

            var url = encodeURIComponent($(this).attr('data-href'));
            var shareURL = "https://www.facebook.com/sharer/sharer.php?app_id=XXXXXXXX&sdk=joey&u="+url+"%2F&display=popup&ref=plugin&src=share_button";

            var width = 655;
            var height = 250;

            var left = (screen.width/2)-(width/2);
            var top = (screen.height/2)-(height/2);

            window.open(shareURL, 'facebookShare', 'scrollbars=1,resizable=1,width='+width+',height='+height+',left='+left+',top='+top);

        });