1

我们将 Nationbuilder 用于我们的网站,并发现当 Nationbuilder 对链接进行编码(用于跟踪)时,如果它们包含多个查询参数,它将破坏它们。

例如,假设我们在 Nationbuilder 的电子邮件中插入以下链接:

<a href="http://www.example.com/?a=1&b=2">click me</a>

假设我们的 Nationbuilder 网站托管在 www.website.org,那么 Nationbuilder 将这样重写链接:

<a href="http://www.website.org/r?u=http%3A%2F%2Fwww.example.com%3Fa%3D1&b=2&e=986513203a6d0d0a90fd5ab67500a9a5&utm_source=my_source&utm_medium=my_medium&utm_campaign=my_campaign&n=2">click me</a>

当点击上面的链接时,Nationbuilder 会对其进行处理并将点击事件记录在他们的系统中,但随后会错误地重定向到http://www.example.com?a=1并丢弃 &b=2。

大多数人会立即发现问题——我们的原始 url,作为上面的“u”查询参数传递,没有被 Nationbuilder 正确编码。至少应该对“b”之前的&符号进行编码,如果不是等号,那么我们的整个原始 url 将被捕获在“u”参数中。Nationbuilder 创建的正确链接,使用正确的编码,应该是这样的:

<a href="http://www.website.org/r?u=http%3A%2F%2Fwww.example.com%3Fa%3D1%26b%3D2&e=986513203a6d0d0a90fd5ab67500a9a5&utm_source=my_source&utm_medium=my_medium&utm_campaign=my_campaign&n=2">click me</a>

令人震惊的是,Nationbuilder 技术支持和他们的工程师说这种行为“按预期工作”。我们指出,没有人会期望一个工作链接会变成一个损坏的链接,但他们拒绝将其视为错误或至少视为设计错误。

有没有人建议我们如何绕过这个 Nationbuilder 使用查询参数断开链接的“功能”?我们在 URL 中广泛使用查询参数。我们正在考虑通过 bit.ly 缩短每个链接,这样它们就没有查询参数,但这似乎是很多不必要的工作。

谢谢!

4

2 回答 2

0

是的,只需使用带有参数的链接,并使用这样的工具对其进行编码, http: //meyerweb.com/eric/tools/dencoder/这样您的 URL 就不会被 NB 的处理破坏。

所以

example.com/page?a=1&b=2

变成

example.com%2Fpage%3Fa%3D1%26b%3D2

于 2015-04-03T20:13:04.940 回答
0

如果提供的解决方案都不起作用,您可以使用 URL 缩短服务,例如 bit.ly,并从您的 NB 电子邮件爆炸中链接到这些缩短的 URL,然后将重定向到您提供给缩短服务的完整 URL。

于 2016-09-21T04:09:53.587 回答