Java 要测试url的字符无效
这里我必须从客户那里获取输入URI。 基本URL为- 因此,最终URL将是-https://mydomain.com/router/ 在这里,我必须使用-Java 要测试url的字符无效,java,Java,这里我必须从客户那里获取输入URI。 基本URL为- 因此,最终URL将是-https://mydomain.com/router/ 在这里,我必须使用- java.net.URL url = new java.net.URL(finalURL); 但我无法测试失败案例。我尝试使用所有特殊字符,但无法获得格式错误的URL异常 下面是我尝试使用的URI- 维也纳恩斯特哈佩尔球场 &&& '";'><()!~`5%=-_}{}[]\||| ? ?&&a
java.net.URL url = new java.net.URL(finalURL);
但我无法测试失败案例。我尝试使用所有特殊字符,但无法获得格式错误的URL异常
下面是我尝试使用的URI-
维也纳恩斯特哈佩尔球场 &&& '";'><()!~`5%=-_}{}[]\||| ? ?&& / ?
维也纳恩斯特哈佩尔球场 &&& '“;”>触发异常的一种方法是
String finalURL = "Like this";
try {
java.net.URL url = new java.net.URL(finalURL);
} catch (MalformedURLException e) {
e.printStackTrace();
}
输出为(按要求)
java.net.MalformedURLException:没有协议:像这样
在java.net.URL.(URL.java:586)
在java.net.URL.(URL.java:483)
位于java.net.URL。(URL.java:432)
位于com.stackoverflow.Main.Main(Main.java:15)
您可以使用URI
类而不是URL
;它在验证方面会更好当您打开连接时会发生什么?@JunedAhsan这里我只需要进行格式验证。我不想打开到URL的连接。
java.net.MalformedURLException: no protocol: Like this
at java.net.URL.<init>(URL.java:586)
at java.net.URL.<init>(URL.java:483)
at java.net.URL.<init>(URL.java:432)
at com.stackoverflow.Main.main(Main.java:15)