REST API로 동적 링크 만들기

Firebase 동적 링크 REST API를 사용하여 짧은 Dynamic Links를 만들 수 있습니다. 이 API는 긴 Dynamic Link 또는 Dynamic Link 매개변수가 포함된 객체를 취하며 다음 예시와 같은 URL을 반환합니다.

https://example.page.link/WXYZ

API 및 클라이언트(Android/Apple) SDK로 만든 짧은 Dynamic LinksFirebase 콘솔에 표시되지 않습니다. 이러한 Dynamic Links는 사용자 간 공유를 위한 것입니다. 마케팅 사용 사례인 경우 계속하여 Firebase 콘솔의 Dynamic Links 페이지를 통해 직접 링크를 만듭니다.

시작하기 전에

  1. API 키를 확인합니다. API 요청을 인증하려면 API 키가 필요합니다. API 키를 확인하는 방법은 다음과 같습니다.
    1. Firebase 콘솔의 설정 페이지를 엽니다. 프로젝트를 선택하라는 메시지가 나타나면 메뉴에서 Firebase 프로젝트를 선택합니다.
    2. 웹 API 키 필드의 값을 기록해 둡니다.
  2. Firebase 콘솔에서 Dynamic Links 섹션을 엽니다.
  3. 아직 서비스 약관에 동의하지 않았고 Dynamic Links의 도메인도 설정하지 않았다면 관련 메시지가 표시될 때 동의하고 설정합니다.

    Dynamic Links 도메인이 이미 있다면 기록해 둡니다. 프로그래매틱 방식으로 Dynamic Links를 만들 때 Dynamic Links 도메인을 제공해야 합니다.

Firebase 동적 링크 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를 만드는 방법은 수동으로 URL 작성을 참조하세요.

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 참조를 확인하세요.

짧은 Dynamic Link 길이 설정

suffix 매개변수를 설정하여 짧은 Dynamic Link의 경로 구성요소를 생성할 방법을 지정할 수도 있습니다.

기본적으로, 또는 매개변수를 "UNGUESSABLE"로 설정하면 경로 구성요소가 다음 예시와 같이 17자(영문 기준) 길이로 생성됩니다.

https://example.page.link/UVWXYZuvwxyz12345

이러한 문자열은 base62 인코딩으로 무작위 생성된 96비트 숫자로 만들어집니다. 이 설정을 사용하면 Dynamic Links URL�� ������ 및 ��롤링되어 민감한 정보가 무단으로 의도치 않은 수신자에게 유출될 염려가 없습니다.

매개변수를 "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"
   }
}

제공된 딥 링크 값이 적어도 http:// 또는 https:// 스키마로 시작되어야 합니다. 또한 콘솔에 입력한 URL 패턴 허용 목록과도 일치해야 합니다. 그렇지 않을 경우 생성 API가 실패하고 HTTP 오류 코드 400이 반환됩니다.

다음 단계

이제 Dynamic Links를 만들었으므로 앱에서 Dynamic Links를 수신하고 링크를 연 사용자를 앱의 적절한 위치로 안내하도록 설정해야 합니다.

앱에서 Dynamic Links를 수신하는 방법은 iOS, Android, C++, Unity 관련 문서를 참조하세요.

요청은 IP 주소별 초당 5회, 일일 200,000회로 제한됩니다. 한도를 초과하면 응답에 HTTP 오류 코드 429가 반환됩니다. 할당량 증가를 요청하려면 이 양식을 작성하세요.