根据主题,我正在尝试执行此操作,但是使用检查网站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的格式如何,以便可以验证吗?
预先感谢
答案 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!