สร้างลิงก์แบบไดนามิกด้วย 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. จดค่าของช่องคีย์ Web 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

สตริงดังกล่าวสร้างขึ้นโดยการเข้ารหัสฐาน 62 สำหรับตัวเลข 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 หากต้องการขอโควต้าเพิ่ม ให้กรอกแบบฟอร์มนี้