You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google URL Shortener停用后,如何用C#对接Firebase动态链接API?

替换Google URL Shortener为Firebase动态链接的实操指南

我太懂这种手足无措的感觉了——用了好几年的工具突然要停用,官方文档又写得云里雾里,连个直接能用的代码示例都不给,对非专业开发者来说简直是噩梦。别慌,我一步步带你把原来的URL缩短代码改成Firebase动态链接的版本,尽量说得直白易懂。

先搞懂核心逻辑

Firebase动态链接是通过HTTP POST请求生成短链接的,说白了就是给指定的API地址发一段包含你要缩短的长链接、你的API密钥和一些配置的JSON数据,然后它返回给你生成好的短链接。

给你写好的代码示例(以C#为例,看你原代码是string开头,应该是用的C#)

先确认你有没有引入必要的工具包:如果用JSON序列化的话,需要安装Newtonsoft.Json(NuGet里搜就能装),然后加这些命名空间:

using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

然后直接用这个方法替换你原来的URL缩短逻辑:

public async Task<string> GenerateFirebaseShortLink(string yourLongUrl, string yourFirebaseApiKey)
{
    // 固定的Firebase动态链接API地址,把你的API密钥拼在后面
    string apiUrl = $"https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key={yourFirebaseApiKey}";

    // 构造要发送的请求内容,这里是关键配置
    var requestData = new
    {
        dynamicLinkInfo = new
        {
            // 这里要换成你在Firebase控制台创建的动态链接域名前缀,比如https://myapp.page.link
            domainUriPrefix = "https://你的自定义前缀.page.link",
            link = yourLongUrl // 你要缩短的那个长链接
        },
        suffix = new
        {
            // SHORT是短后缀,好记;UNGUESSABLE是长后缀,更安全,选一个就行
            option = "SHORT"
        }
    };

    // 把上面的对象转成JSON字符串
    string jsonRequest = JsonConvert.SerializeObject(requestData);

    // 发送POST请求
    using (HttpClient client = new HttpClient())
    {
        var requestContent = new StringContent(jsonRequest, Encoding.UTF8, "application/json");
        var response = await client.PostAsync(apiUrl, requestContent);

        // 处理返回结果
        if (response.IsSuccessStatusCode)
        {
            string responseJson = await response.Content.ReadAsStringAsync();
            var result = JsonConvert.DeserializeObject<dynamic>(responseJson);
            return result.shortLink; // 拿到生成的短链接啦
        }
        else
        {
            // 如果出错了,把错误信息打出来方便排查
            string errorDetails = await response.Content.ReadAsStringAsync();
            throw new Exception($"生成短链接失败:{errorDetails}");
        }
    }
}

关键配置怎么填?

  • domainUriPrefix:你得先去Firebase控制台的「动态链接」模块,创建一个属于你自己的域名前缀,比如https://my-short-links.page.link,把这个填进去就行。
  • yourFirebaseApiKey:就是你已经拿到的那个Firebase API密钥,直接复制粘贴进去。
  • suffix.option:选SHORT生成的短链接更短更好记,选UNGUESSABLE生成的链接后缀更长,不容易被别人猜出来,看你需求选。

怎么调用这个方法?

把你原来调用Google URL Shortener的代码换成下面这样就行:

// 你要缩短的长链接
string myLongUrl = "https://www.example.com/very/long/url/you/want/to/shorten";
// 你的Firebase API密钥
string myApiKey = "AIzaSyXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
// 生成短链接
string myShortLink = await GenerateFirebaseShortLink(myLongUrl, myApiKey);

其他注意事项

  1. 如果你用的不是C#,比如Python或者Java,思路完全一样:构造POST请求,发送JSON格式的请求体到那个API地址,解析返回的JSON里的shortLink字段就行。
  2. 确保你的Firebase项目已经开启了「动态链接」服务,去控制台检查一下,没开的话开一下就行。
  3. 如果请求失败,先看返回的错误信息,常见问题比如域名前缀填错了、API密钥没权限(去Google Cloud控制台检查一下API密钥的权限,确保它能访问Firebase动态链接API)。

内容的提问来源于stack exchange,提问作者user9467387

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:49:53