Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.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
Javascript 如何动态更新postToFeed()重定向\u uri?_Javascript_Facebook_Jquery - Fatal编程技术网

Javascript 如何动态更新postToFeed()重定向\u uri?

Javascript 如何动态更新postToFeed()重定向\u uri?,javascript,facebook,jquery,Javascript,Facebook,Jquery,我相信有一个相对简单的方法来解决这个问题,但我需要一些帮助。我有一个登录页面,它接受用户的电子邮件地址,并生成一个唯一的URL,用户可以使用该URL来推荐朋友。我使用AJAX绑定到表单,呈现用户独特的引用链接以及一些社交共享机制。对于这些社交共享机制(Tweet、Share等),我需要将用户动态生成的唯一参考URL传递给Facebook postToFeed()脚本 我曾经使用过fb:share按钮,但现在似乎不推荐使用like和posttofeed操作。在过去的应用程序和其他社交网络共享功能(

我相信有一个相对简单的方法来解决这个问题,但我需要一些帮助。我有一个登录页面,它接受用户的电子邮件地址,并生成一个唯一的URL,用户可以使用该URL来推荐朋友。我使用AJAX绑定到表单,呈现用户独特的引用链接以及一些社交共享机制。对于这些社交共享机制(Tweet、Share等),我需要将用户动态生成的唯一参考URL传递给Facebook postToFeed()脚本

我曾经使用过fb:share按钮,但现在似乎不推荐使用like和posttofeed操作。在过去的应用程序和其他社交网络共享功能(如Twitter)中,这是微不足道的,因为这些按钮使用了href属性

<a href="#" id="twitter">Tweet</a>
但是,使用postToFeed(),您需要在脚本中传递要共享的信息(请参见下文)

有谁能帮我弄清楚,当用户提交他们的电子邮件地址时,在创建了相应的重定向uri之后,我是如何在下面动态添加它的

非常感谢

        FB.init({appId: "", status: true, cookie: true});
        function postToFeed() {
          var obj = {
            method: 'feed',
            redirect_uri: '',
            link: '',
            picture: '',
            name: '',
            caption: '',
            description: ''
          };

          function callback(response) {
            document.getElementById('msg').innerHTML = "Post ID: " + response['post_id'];
          }

          FB.ui(obj, callback);
        }

您可以将obj变量放置在postToFeed方法之外:

var postToFeedObj = {
    method: 'feed',
    redirect_uri: '',
    link: '',
    picture: '',
    name: '',
    caption: '',
    description: ''
};

function postToFeed() {

    function callback(response) {
        document.getElementById('msg').innerHTML = "Post ID: " + response['post_id'];
    }

    FB.ui(postToFeedObj, callback);
}
并根据需要更改链接的对象属性。还有一种使用直接链接的方法,但在这种情况下,您没有回调:

https://www.facebook.com/dialog/feed?
  app_id=YOURAPPID&
  link=YOURLINK&
  picture=YOURPICTURE&
  name=THE%20NAME&
  caption=THE%20CAPTION&
  description=THE%20DESCRIPTON&
  redirect_uri=THEREDIRECTLINK

您可以将obj变量放置在postToFeed方法之外:

var postToFeedObj = {
    method: 'feed',
    redirect_uri: '',
    link: '',
    picture: '',
    name: '',
    caption: '',
    description: ''
};

function postToFeed() {

    function callback(response) {
        document.getElementById('msg').innerHTML = "Post ID: " + response['post_id'];
    }

    FB.ui(postToFeedObj, callback);
}
并根据需要更改链接的对象属性。还有一种使用直接链接的方法,但在这种情况下,您没有回调:

https://www.facebook.com/dialog/feed?
  app_id=YOURAPPID&
  link=YOURLINK&
  picture=YOURPICTURE&
  name=THE%20NAME&
  caption=THE%20CAPTION&
  description=THE%20DESCRIPTON&
  redirect_uri=THEREDIRECTLINK
我的做法是:

将onclick方法添加到href:

<a href="#" onclick = 'postToFeed("<?= $uniqueURL;?>")' id="facebook">Share</a>
希望这有帮助

我的做法是:

将onclick方法添加到href:

<a href="#" onclick = 'postToFeed("<?= $uniqueURL;?>")' id="facebook">Share</a>

希望这有帮助

这就是我使用的方法。很好,谢谢!很抱歉延迟接收。这是我使用的方法。很好,谢谢!很抱歉延迟验收。这种方法也可以,但不是我使用的方法。一旦我有了这样做所需的声誉,我会给你一个向上投票的机会。这种方法同样有效,但它不是我使用的方法。一旦我有了这样做的必要声誉,我会给你一个向上投票的机会。