สร้างลิงก์แบบไดนามิกด้วย REST API

คุณสร้าง Dynamic Links แบบสั้นได้โดยใช้ Firebase Dynamic Links REST API API นี้รับ Dynamic Link แบบยาวหรือออบเจ็กต์ที่มีพารามิเตอร์ Dynamic Link และแสดงผล URL ดังตัวอย่างต่อไปนี้

https://example.page.link/WXYZ

Shorts Dynamic Links ที่สร้างขึ้นด้วย API และ SDK ของไคลเอ็นต์ (Android/Apple) จะไม่แสดงในคอนโซล Firebase Dynamic Links ดังกล่าวมีไว้สำหรับการแชร์ระหว่างผู้ใช้ สำหรับกรณีการใช้งานด้านการตลาด ให้สร้างลิงก์ต่อไปโดยตรงผ่านหน้า Dynamic Links ของคอนโซล Firebase

ก่อนเริ่มต้น

  1. รับคีย์ API คุณจะต้องใช้คีย์ API เพื่อตรวจสอบสิทธิ์คำขอที่ส่งไปยัง API วิธีค้นหาคีย์ API
    1. เปิดหน้าการตั้งค่าของคอนโซล Firebase หากระบบแจ้งให้เลือกโปรเจ็กต์ ให้เลือกโปรเจ็กต์ Firebase จากเมนู
    2. จดบันทึกค่าของช่องคีย์ API ของเว็บ
  2. ในคอนโซล Firebase ให้เปิดส่วน Dynamic Links
  3. หากยังไม่ได้ยอมรับข้อกำหนดในการให้บริการและตั้งค่าโดเมนสำหรับ Dynamic Links ให้ดำเนินการเมื่อได้รับข้อความแจ้ง

    หากคุณมีโดเมน Dynamic Links อยู่แล้ว ให้จดโดเมนนั้นไว้ คุณต้องระบุโดเมน Dynamic Links เมื่อสร้าง Dynamic Links ด้วยโปรแกรม

คุณสามารถใช้ Firebase Dynamic Links API เพื่อย่อ Dynamic Link ที่ยาวได้ โดยให้ส่งคําขอ HTTP POST ไปยังปลายทาง shortLinks โดยระบุ Dynamic Link แบบยาวในพารามิเตอร์ longDynamicLink เช่น

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"
}

ดูสร้าง URL ด้วยตนเองเพื่อดูวิธีสร้าง Dynamic Links แบบยาว

นอกจากนี้ คุณยังสร้าง Dynamic Link แบบสั้นได้โดยการระบุพารามิเตอร์ Dynamic Link โดยตรง โดยส่งคําขอ HTTP POST ไปยังปลายทาง shortLinks โดยระบุพารามิเตอร์ Dynamic Link ในพารามิเตอร์ dynamicLinkInfo เช่น

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 บิตที่สร้างขึ้นแบบสุ่ม ใช้การตั้งค่านี้เพื่อป้องกันไม่ให้ URL ของ Dynamic Links คาดเดาและทำการ Crawl ซึ่งอาจเปิดเผยข้อมูลที่ละเอียดอ่อนต่อผู้รับที่ไม่ตั้งใจ

หากคุณตั้งค่าพารามิเตอร์เป็น "SHORT" คอมโพเนนต์เส้นทางจะเป็นสตริงที่มีความยาวเพียงเท่าที่จำเป็นเพื่อให้ไม่ซ้ำกัน โดยมีความยาวขั้นต่ำ 4 อักขระ

https://example.page.link/WXYZ

ใช้วิธีนี้หากข้อมูลที่ละเอียดอ่อนจะไม่เปิดเผยหากมีการเดา Dynamic Link URL สั้นๆ

ตัวอย่างต่อไปนี้แสดงวิธีตั้งค่าพารามิเตอร์ 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"
   }
}

ค่า Deep Link ที่ระบุต้องขึ้นต้นด้วยรูปแบบ http:// หรือ https:// เป็นอย่างน้อย นอกจากนี้ URL ดังกล่าวต้องตรงกับรายการที่อนุญาตพิเศษรูปแบบ URL ที่ป้อนในคอนโซลด้วย มิฉะนั้น API การสร้างจะดำเนินการไม่สำเร็จพร้อมรหัสข้อผิดพลาด HTTP 400

ขั้นตอนถัดไป

เมื่อสร้าง Dynamic Links แล้ว คุณต้องตั้งค่าแอปให้รับ Dynamic Links และนำผู้ใช้ไปยังส่วนที่เหมาะสมในแอปหลังจากที่ผู้ใช้เปิด Dynamic Links

หากต้องการรับ Dynamic Links ในแอป โปรดดูเอกสารประกอบสำหรับ iOS, Android, C++ และ Unity

คำขอมีจำนวนได้สูงสุด 5 คำขอ/ที่อยู่ IP/วินาที และ 200,000 คำขอ/วัน หากเกินจำนวนดังกล่าว การตอบกลับจะแสดงรหัสข้อผิดพลาด HTTP 429 หากต้องการขอโควต้าเพิ่ม ให้กรอกแบบฟอร์มนี้