「分享」對話框

「分享」對話框能讓用戶將個人動態發佈至自己的生活時報、朋友的生活時報、群組,或者 Messenger 上的私人訊息。由於不需要「Facebook 登入」或任何進階權限,因此這是在網絡上進行分享最簡單的方式。

如果用戶所用的瀏覽器並未以 Cookie 登入,可供選擇分享對象的下拉式清單就不會出現。如果應用程式使用動態對話框而非分享對話框,或應用程式使用 iframe 網頁檢視的話,該訊息欄位也不會顯示。

若要在原生流動應用程式實作「分享」對話框,請參閱 iOSAndroid 的相關指南。

整合

JavaScript 專用 Facebook SDK 有提供分享對話框。您可以使用下列程式碼片段觸發對話框。您也可以使用重新導向前往網址。如需詳細資訊,請參閱進階主題

JavaScript 專用 Facebook SDK

使用 FB.ui 函數並附加 share 方法參數來觸發「分享」對話框以分享連結。

若要分享連結:

FB.ui({
  method: 'share',
  href: 'https://developers.facebook.com/docs/',
}, function(response){});
立即試試!

在此網址的網頁內包含開放式圖表中繼標籤,以自訂分享回 Facebook 的動態。

請注意,只有在使用您應用程式的用戶已經使用「Facebook 登入」驗證您的應用程式時才會顯示 response.error_message

參數

常用參數

JS SDK 將自動提供這些參數。

參數描述

app_id

您應用程式的唯一識別碼。此為必要項目。

redirect_uri

用戶點擊對話框上的按鈕後重新導向至的網址。使用網址重新導向時為必要項目。

display

決定對話框的轉譯方式。

  • 如果您使用網址重新導向對話框實作,則這將會是顯示在 Facebook.com 中的完整網頁顯示。此顯示類型稱為 page
  • 如果您使用其中一個 iOS SDK 或 Android SDK 來調用對話框,則會自動指定此項目並針對裝置選擇適當的顯示類型。
  • 如果您使用 Facebook JavaScript SDK,此項目將針對登入您應用程式的用戶預設為強制回應 iframe 類型,在 Facebook.com 上的遊戲中使用時設為 async,其他情況則設為 popup 視窗。如有需要,您還可以在使用 Facebook JavaScript SDK 時強制使用 popup 類型。
  • 流動版網頁應用程式將一律預設為 touch 顯示類型。

share 參數

參數描述預設

href

附加至此帖子的連結。使用 share 方法時為必要項目。在此網址的網頁內包含開放式圖表中繼標籤,以自訂分享的動態。

目前的網址

hashtag

由開發人員指定的主題標籤可加入分享內容之中。用戶依然可以選擇從對話框中移除此主題標籤。主題標籤應包含雜湊符號,例如 #facebook

null

quote

與連結一同分享的金句,這句文章中的引文可能是用戶的標記文字或開發人員預先定義的文字。

null

mobile_iframe

若設定為 true,分享按鈕會在網站上方的 iframe 開啟分享對話框(如需更多資訊,請參閱流動網站分享對話框)。此選項只適用於流動版,不適用桌面版。

false


回應資料

參數 描述

post_id

只有在用戶使用 Facebook 登入您的應用程式並已經授予 publish_actions 時,才可使用此參數。如果可供使用,此參數為已發佈之開放式圖表動態的編號。

error_message

只有在用戶使用「Facebook 登入」登入您的應用程式時,才可使用此參數。

進階主題

您也可以善用以下進階功能。

流動網站分享對話框

流動網站分享對話框也可以在內容上方的 iFrame 中顯示。若用戶完成分享流程,對話框就會退出,讓用戶回到原本的內容以便繼續瀏覽。

程式碼範例

為了讓流動網站分享對話框能夠在 iframe 中顯示,請將屬性 mobile_iframe 設定為 true

FB.ui({
  method: 'share',
  mobile_iframe: true,
  href: 'https://developers.facebook.com/docs/',
}, function(response){});
立即試試!

網址重新導向

若要分享連結:

https://www.facebook.com/dialog/share?
  app_id=145634995501895
  &display=popup
  &href=https%3A%2F%2Fdevelopers.facebook.com%2Fdocs%2F
  &redirect_uri=https%3A%2F%2Fdevelopers.facebook.com%2Ftools%2Fexplorer

注意: 測試此程式碼時,請移除分行符號。否則,您會遇到錯誤。

開放式圖表動作

使用 FB.ui 函數並附加 share_open_graph 方法參數來觸發「分享」對話框以分享開放式圖表動態。

若要使用此對話框分享開放式圖表:

FB.ui({
  method: 'share_open_graph',
  action_type: 'og.likes',
  action_properties: JSON.stringify({
    object:'https://developers.facebook.com/docs/',
  })
}, function(response){});

請注意,網址重新導向的運作方式和標準連結分享相同。

share_open_graph 參數

使用與分享標準連結相同的參數,但新增下列參數:

參數 描述

action_type

指定所要發佈之開放式圖表動作類型的字串,亦即,og.likes 表示內建讚類型。對話框還支援已批准的自訂類型。使用 share_open_graph 方法時為必要項目。

action_properties

鍵/值組的 JSON 物件,指定對應至所使用之 action_type 的參數。有效鍵/值組是相同的參數,可以在使用 API 發佈開放式圖表動作時使用。使用 share_open_graph 方法時為必要項目。

share_open_graph 對話框不支援 mobile_iframe: true