Ran*_*mar 14 java validation url android
我的问题
在我的Android应用程序中,我从用户那里获得了url输入,例如"www.google.com".
我想知道给定的URL是否使用http或https.
我试过了什么
在参考了一些Stack Overflow问题后,我尝试使用getScheme()
try {
String url_name="www.google.com";
URI MyUri = new URI(url_name);
String http_or_https="";
http_or_https=MyUri.getScheme();
url_name=http_or_https+"://"+urlname;
Log.d("URLNAME",url_name);
}
catch (Exception e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
但我上面的代码抛出异常.
我的问题
以上方法getScheme()是否正确?
如果上述方法不正确,如何找到网址http或https?
您可以使用URLUtils来检查给定的 url 是 http 还是 https 。
URLUtil.isHttpUrl(String url); 如果 url 是 http,则返回 True。
URLUtil.isHttpsUrl(String url); 如果 url 是 https,则返回 True。
域名就是域名,与协议无关。域是 WHERE,协议是 HOW。
域是你想去的位置,协议是你如何去那里,乘公共汽车、乘飞机、乘火车还是乘船。问“我想去商店,我如何询问商店我应该坐火车还是开车去?”是没有意义的?
这在浏览器中起作用的原因是,如果未提供协议,浏览器通常会尝试使用 http 和 https 进行连接。
如果您知道 URL,请执行以下操作:
public void decideProtocol(URL url) throws IOException {
if ("https".equals(url.getProtocol())) {
// It is https
} else if ("http".equals(url.getProtocol())) {
// It is http
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5593 次 |
| 最近记录: |