使用核心php在Firebase上创建动态链接

时间:2018-09-24 08:19:29

标签: php firebase firebase-dynamic-links

在我的firebase帐户中,我手动创建了动态链接,并在应用程序中获得了该动态链接,但是问题是我需要使用核心php随机创建动态链接。

我已经尝试了以下步骤

1步骤:转到Firebase控制台帐户

2步骤:选择应用,然后在“增长”>“动态链接”>“新动态链接”下

这里我可以手动创建,但是不能使用核心php创建。

2 个答案:

答案 0 :(得分:8)

简便的方法

function shorten_URL ($longUrl) {
  $key = 'WEB_API_KEY';
  $url = 'https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=' . $key;
  $data = array(
     "dynamicLinkInfo" => array(
        "dynamicLinkDomain" => "YOUR_DOMAIN.page.link",
        "link" => $longUrl
     )
  );

  $headers = array('Content-Type: application/json');

  $ch = curl_init ();
  curl_setopt ( $ch, CURLOPT_URL, $url );
  curl_setopt ( $ch, CURLOPT_POST, true );
  curl_setopt ( $ch, CURLOPT_HTTPHEADER, $headers );
  curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, true );
  curl_setopt ( $ch, CURLOPT_POSTFIELDS, json_encode($data) );

  $data = curl_exec ( $ch );
  curl_close ( $ch );

  $short_url = json_decode($data);
  if(isset($short_url->error)){
      return $short_url->error->message;
  } else {
      return $short_url->shortLink;
  }

}

// Call the function with the URL
shorten_URL('https://YOUR_LONG_URL');

所有要做的就是从动态链接添加Firebase域,并从设置添加Web API密钥。

答案 1 :(得分:0)

您可以使用kreait/firebase-php作曲家程序包通过Firebase API创建动态链接。参见setup guidedynamic links API

还有一种更简单的方法。您可能要手动构造动态链接,而不是调用Firebase API。我使用this guide并创建了mxl/firebase-dynamic-link作曲家软件包。

  1. 使用作曲家安装它:

    $ composer require mxl/firebase-dynamic-link
    
  2. 建立动态链接:

    use MichaelLedin\FirebaseDynamicLink\DynamicLink;
    
    DynamicLink::for('your_subdomain.page.link', 'https://your_domain.com/path/to/page')->build();