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

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

https://example.page.link/WXYZ

Short 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

ตั้งค่าความยาวของแบบสั้น Dynamic Link

นอกจากนี้ คุณยังตั้งค่าพารามิเตอร์ suffix เพื่อระบุวิธีสร้างคอมโพเนนต์เส้นทางของ ลิงก์แบบไดนามิกแบบสั้น Dynamic Linkได้ด้วย

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

https://example.page.link/UVWXYZuvwxyz12345

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

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

https://example.page.link/WXYZ

ใช้วิธีนี้หากข้อมูลที่ละเอียดอ่อนจะไม่ถูกเปิดเผยหากมีการคาดเดา URL 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"
   }
}

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

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

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

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

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