2014-04-23 126 views
3

在父頁面中,我有一個共享按鈕來調用FB.ui()。我點擊按鈕和FB共享模式彈出窗口作爲一個單獨的窗口,然後我關閉我的父頁面。回到我的FB共享窗口並將內容分享到fb牆。點擊分享按鈕後,窗口變成白頁(url爲https://www.facebook.com/dialog/feed)。而FB.ui()的回調沒有被調用。FB.ui回調不會發生,窗口也不會自動關閉

我們有解決方案嗎?至少我想要回調工作。 我試圖添加「redirect_uri」,因爲它在這篇文章FB.ui feed not giving a callback中提出,但它不會改變任何東西。

/* FB init */ 
window.fbAsyncInit = function() { 
    FB.init({ 
     appId : '', 
     status : false, 
     xfbml : false, 
    }); 
}; 

(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/all.js"; 
    fjs.parentNode.insertBefore(js, fjs); 
}(document, 'script', 'facebook-jssdk')); 

shareButton.on('click', function(e) { 
    submitPost(); 
}); 

/* the function for share*/ 
    function submitPost() { 
     FB.ui({ 
      method: 'feed', 
      name: '', 
      link: '', 
      picture: '', 
      caption: '', 
      description: '', 
     }, function(response) { 
      if (response && response.post_id) { 
       // do something 
      } 
     }); 
    } 
+0

一個如何理解發生了什麼,除非我們看到你的代碼 –

+0

你在哪裏調用'submitPost'?我不能在代碼 –

+0

中看到,謝謝,我添加了我的代碼。其實它在正常流程中工作正常,角落的情況是,如果我打開FB共享窗口,然後關閉父頁面,然後我點擊FB窗口中的「共享」,該帖子是共享的,但回調不會發生,窗口去一個空白頁。 – user1735940

回答

1

找到了一個解決方案:使用老版本的FB Javascript SDK(2012),並添加「redirect_uri」。 FB.ui feed not giving a callback

FB.ui({ 
     method: 'feed', 
     name: '', 
     link: '', 
     picture: '', 
     caption: '', 
     description: '', 
     redirect_uri:'http://.../self.close.html' 
    }); 
+0

我認爲它已被棄用,將無法正常工作 –