如何将带有查询参数的URL作为查询参数传递给另一个URL?

时间:2018-12-13 10:19:07

标签: html url query-parameters

根据主题,我正在尝试执行此操作,但是使用检查网站http://www.getlinkinfo.com/

将其标记为无效URL

我要验证的URL类型的示例如下: http://www.google.com/?link=www.yahoo.com?value=foobar

这与我正在尝试的工作格式类似。我尝试对各个部分进行编码,但是它们都给出相同的结果。

仅对值进行编码不起作用: http://www.google.com/?link=www.yahoo.com%3Fvalue%3Dfoobar

编码整个查询参数不起作用: http://www.google.com/?link%3Dwww.yahoo.com%3Fvalue%3Dfoobar

对整个URL进行编码无效: http%3A%2F%2Fwww.google.com%2F%3Flink%3Dwww.yahoo.com%3Fvalue%3Dfoobar

有人知道URL的格式如何,以便可以验证吗?

预先感谢

2 个答案:

答案 0 :(得分:0)

请查看URLEncoder,例如:

URLEncoder.encode("mysite.com?a=test&b=test", "UTF-8");

应给您mysite.com%2Fa%3Dtest%26b%3Dtest

希望这对您有所帮助。

答案 1 :(得分:0)

您可以像这样在JavaScript中使用encodeURI方法:

encodeURI("http://www.google.com/?link=www.yahoo.com%3Fvalue%3Dfoobar");

这将导致:

http://www.google.com/?link=www.yahoo.com%253Fvalue%253Dfoobar

当您将结果输入到http://www.getlinkinfo.com上的文本框中时,您将获得一个有效的URL!