例如,分享到 Google 的链接:
<a href="http://www.twitter.com/share?url=http://www.google.com/>Tweet</a>
这个很好用。但当URL有查询字符串时,我遇到了问题。
<a href="http://www.twitter.com/share?url=http://mysite.org/foo.htm?bar=123&baz=456">Tweet</a>
使用查询字符串的URL会混淆 Twitter 的 URL 缩短服务 t.co。我已经尝试以各种方式对其进行 URL 编码,但无法使其正常工作。我最接近成功的尝试是这样的。
<a href="http://www.twitter.com/share?url=http://mysite.org/foo.htm%3Fbar%3D123%26baz%3D456">Tweet</a>
我只对查询字符串进行了编码。这样做,t.co可以成功地缩短URL,但是在跟随缩短链接时,它会将您带到已编码的URL。我在地址栏中看到http://mysite.org/foo.htm%3Fbar%3D123%26baz%3D456
,并在浏览器中收到以下错误:
Not Found
The requested URL /foo.htm?bar=123&baz=456 was not found on this server.
我不知道如何解决这个问题。
编辑:关于onteria_的回复
我已经尝试过对整个URL进行编码。那样做会导致推文中不显示任何URL。