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

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

หากตั้งค่าพารามิเตอร์เป็น "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 ที่ป้อนในคอนโซลด้วย มิฉะนั้น API การสร้างจะทำงานไม่สำเร็จโดยมีรหัสข้อผิดพลาด HTTP 400

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

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

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

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