鍍金池/ 問(wèn)答/Java  網(wǎng)絡(luò)安全/ 如何獲取facebook分享成功的回傳參數(shù)?

如何獲取facebook分享成功的回傳參數(shù)?

fb分享事件觸發(fā)的回調(diào)函數(shù)在分享成功或失敗的情況下,傳的參數(shù)都是一樣的,沒(méi)法判斷是分享成功了還是失敗了,請(qǐng)技術(shù)大牛指教解決方法。

回答
編輯回答
雨蝶

是的,如果在pc或者手機(jī)瀏覽器,可以成功得到{"id":"post-id"}

但是在fb app里面就不成功,請(qǐng)看圖片

clipboard.png

2017年1月3日 00:37
編輯回答
不二心

更新:
官網(wǎng)回復(fù): https://developers.facebook.com/docs/sharing/reference/share-dialog#advancedtopics

clipboard.png

clipboard.png

curl -F 'link=http://你的文章鏈接' \
     -F 'thumbnail=http://你的圖片鏈接地址.jpg' \
     -F 'access_token=你的page-access-token'\
        https://graph.facebook.com/v2.11/page-id/feed

如果發(fā)送成功會(huì)返回:

{"id":"post-id"} 這種結(jié)果的。

另外:

  1. 你要確定你的成功設(shè)置了相關(guān)信息。
  2. 你可以通過(guò)添加try...catch..在你的api的呼叫上面。
  3. 你可以試一試通過(guò)JS抓取用戶(hù)click的動(dòng)作,迂回實(shí)現(xiàn)。
FB.ui(
{
  method: 'feed',
  name: 'Facebook Dialogs',
  link: '當(dāng)前網(wǎng)頁(yè)的鏈接'',
  picture: '當(dāng)前網(wǎng)頁(yè)的圖片鏈接',
  caption: '當(dāng)前網(wǎng)頁(yè)的標(biāo)題',
  description: '當(dāng)前網(wǎng)頁(yè)的說(shuō)明'
},
function(response) {
  if (response && response.post_id) {
    alert('Post was published.');
  } else {
    alert('Post was not published.');
  }
}
);

clipboard.png

2017年9月1日 11:15