【问题标题】:Create dynamic link on Firebase using core php使用核心 php 在 Firebase 上创建动态链接
【发布时间】:2018-09-24 08:19:29
【问题描述】:

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

我已经尝试了以下步骤

1 步:转到 Firebase 控制台帐户

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

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

【问题讨论】:

    标签: php firebase firebase-dynamic-links


    【解决方案1】:

    简单的方法

    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 密钥。

    【讨论】:

    • 首先感谢您的回复.. 这些信息非常有用,但我想知道,此代码创建的短链接是否会反映在 firebase 帐户中?
    • 控制台仅查看在控制台创建的动态链接的分析,但要检索您必须使用的 REST API 动态链接的分析数据。 “Firebase 动态链接分析 API”,您可以在此处找到 http 请求 firebase.google.com/docs/dynamic-links/analytics 的示例。
    • 嗨@abdallah,我已经使用上面的代码生成了动态链接,如果我想查看生成的链接,那么我可以在firebase 门户中的哪里查看?我转到动态链接用户界面,但我的域下没有显示任何内容。
    【解决方案2】:

    您可以使用 kreait/firebase-php composer 包通过 Firebase API 创建动态链接。请参阅setup guidedynamic links API

    还有一种更简单的方法。您可能希望手动构建动态链接而不是调用 Firebase API。我使用了this guide 并创建了mxl/firebase-dynamic-link composer 包。

    1. 用 composer 安装它:

      $ 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();
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      • 2020-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多