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

Firebase动态链接setLongLink参数截断问题求助

解决生成短链接时URL参数丢失的问题

哦,这个问题我之前也碰到过!本质是你没对整个目标URL做完整的URL编码,导致goo.gl服务把你目标链接里的&当成了它自己的参数分隔符,所以evaluator=7被当成了goo.gl请求的参数,而不是你要跳转的链接的一部分——哪怕你转义了单个&,也不够彻底。

问题根源

当你把目标链接作为link参数的值传给goo.gl时,这个值本身需要是一个合法的URL参数值,意味着所有特殊字符(包括?、=、&这些)都得编码。你之前只转义了&,但?和=虽然暂时没引发截断,但完整编码能彻底避免这类参数解析错误。

修正后的代码示例(Java)

直接用URLEncoder对整个原始链接编码就行,不用手动转义任何字符:

import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;

// 你的原始目标链接,保留原本的参数格式
String originalTargetLink = "howdoyoudo.co.il?id=123&evaluator=7";
// 对整个链接做URL编码,确保所有特殊字符都被正确处理
String encodedLink = URLEncoder.encode(originalTargetLink, StandardCharsets.UTF_8.name());
// 拼接成goo.gl的长链接请求地址
String dynamicLinkUrl = "https://k5xt4.app.goo.gl/?link=" + encodedLink;
// 继续执行你生成短链接的Task代码...

为什么这样有效?

编码后的链接会变成howdoyoudo.co.il%3Fid%3D123%26evaluator%3D7,goo.gl服务拿到这个link参数值后,会正确解码出完整的目标链接,生成的短链接跳转时就能同时保留id和evaluator两个参数了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 03:58:06