Twitter网页意图URL编码不起作用。

4

我不知道我在这里做错了什么。我正在尝试使用JavaScript对我的URL进行编码。但是URL从未被放入推文中。我认为这与我的URL中的某些参数有空格有关。

https://twitter.com/intent/tweet?text=40%25%20Off%20Prom%20Tuxedo%20Rental&url=http%3A%2F%2Fexample.com%3A5757%2Fcoupon%3Fref_name%3DTest%20Name%26school%3DTest%20School

如果我从URL中删除%20,那么它就能正常工作...

https://twitter.com/intent/tweet?text=40%25%20Off%20Prom%20Tuxedo%20Rental&url=http%3A%2F%2Fexample.com%3A5757%2Fcoupon%3Fref_name%3DTestName%26school%3DTestSchool

但我需要保留那些空格。

这是我现在拥有的javascript代码...

var text =  encodeURIComponent("40% Off Prom Tuxedo Rental");
var couponURL = encodeURIComponent("http://example.com/coupon/?ref_name=Test Name&school=Test School");
var twitterURL = "https://twitter.com/intent/tweet?text=";
var twitterURL = twitterURL+text+"&url="+couponURL;

你有找到解决方法吗? - Alex Daro
我有同样的问题。到目前为止有任何解决方法吗? - Danijel
1个回答

1
在这种情况下,百分号等于%25,因此如果您想在推文链接中包含空格,请使用%2520代替%20。因此,无论您要使用%20的地方,都要改用%2520。
var text =  "40% Off Prom Tuxedo Rental";
text = text.replace(/\s/g, "%2520")

谢谢!你救了我的理智。这让我疯狂了。这个很完美地解决了。 - Curious101

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接