使用 REST API 建立 Dynamic Links

您可以使用 Firebase Dynamic Links REST API 建立簡短 Dynamic Links。這個 API 接受長 Dynamic Link 或包含 Dynamic Link 參數的物件,並傳回類似以下範例的網址:

https://example.page.link/WXYZ

使用 API 和用戶端 (Android/Apple) SDK 建立的短 Dynamic Links 不會顯示在 Firebase 控制台中。這類Dynamic Links僅供使用者之間分享。如要用於行銷用途,請繼續直接透過 Firebase 控制台的「Dynamic Links」頁面建立連結。

事前準備

  1. 取得 API 金鑰。您需要 API 金鑰,才能驗證對 API 的要求。如要查看 API 金鑰,請按照下列步驟操作:
    1. 開啟 Firebase 控制台的「Settings」(設定) 頁面。如果系統提示您選擇專案,請從選單中選取 Firebase 專案。
    2. 記下「Web API 金鑰」欄位的值。
  2. 在 Firebase 控制台中,開啟「Dynamic Links」部分。
  3. 如果您尚未接受服務條款,也未設定 Dynamic Links 的網域,請在系統提示時完成這些操作。

    如果您已有 Dynamic Links 網域,請記下網域名稱。以程式輔助方式建立 Dynamic Links 時,您必須提供 Dynamic Links 網域。

您可以使用 Firebase Dynamic Links API 縮短長 Dynamic Link。方法是向 shortLinks 端點發出 HTTP POST 要求,並在 longDynamicLink 參數中指定長 Dynamic Link。例如:

POST https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=api_key
Content-Type: application/json

{
   "longDynamicLink": "https://example.page.link/?link=https://www.example.com/&apn=com.example.android&ibi=com.example.ios"
}

請參閱「手動建構網址」,瞭解如何建立長 Dynamic Links。

您也可以直接指定 Dynamic Link 參數,建立短 Dynamic Link。如要執行這項操作,請向 shortLinks 端點發出 HTTP POST 要求,並在 dynamicLinkInfo 參數中指定 Dynamic Link 參數。例如:

POST https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=api_key
Content-Type: application/json

{
  "dynamicLinkInfo": {
    "domainUriPrefix": "https://example.page.link",
    "link": "https://www.example.com/",
    "androidInfo": {
      "androidPackageName": "com.example.android"
    },
    "iosInfo": {
      "iosBundleId": "com.example.ios"
    }
  }
}

如需 dynamicLinkInfo 物件的完整規格,請參閱 API 參考資料。

設定 Shorts 的長度 Dynamic Link

您也可以設定 suffix 參數,指定短 Dynamic Link 的路徑元件產生方式。

根據預設,或將參數設為 "UNGUESSABLE" 時,路徑元件會是 17 個字元的字串,例如:

https://example.page.link/UVWXYZuvwxyz12345

這類字串是以 base62 編碼隨機產生的 96 位元數字。這項設定可防止 Dynamic Links 網址遭到猜測和檢索,避免機密資訊外洩給不當對象。

如果將參數設為 "SHORT",路徑元件會是長度不超過必要長度的字串,長度至少為 4 個字元。

https://example.page.link/WXYZ

如果短 Dynamic Link 網址遭人猜中,也不會洩漏機密資訊,請使用這個方法。

以下範例說明如何設定 suffix 參數:

POST https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=api_key
Content-Type: application/json

{
   "longDynamicLink": "https://example.page.link/?link=http://www.example.com/&apn=com.example.android&ibi=com.example.ios",
   "suffix": {
     "option": "UNGUESSABLE"
   }
}

提供的深層連結值開頭至少須為 http:// 或 https://。 此外,也必須與控制台中輸入的任何網址模式許可清單相符。 否則,建立 API 會失敗,並傳回 HTTP 錯誤代碼 400。

後續步驟

建立 Dynamic Links 後,您需要設定應用程式來接收 Dynamic Links,並在使用者開啟後將他們導向應用程式中的正確位置。

如要在應用程式中接收 Dynamic Links,請參閱 iOS、Android、C++ 和 Unity 的說明文件。

要求數量上限為每秒 5 個要求/IP 位址,以及每天 200,000 個要求。 如果超過,回應會傳回 HTTP 錯誤代碼 429。