java怎么判断一个网站是否可以访问

 时间:2024-11-08 00:32:42

1、检查URL是否正确:URI uri= new URI(url); 如果该方法抛出异常URISyntaxException,那说明这个url不正确,但是遇到一个url地址中包含字符串^时也会抛出异常,可是这个含有^的链接却是一个有效的地址,比如百度中的某些地址,所以方法应该这样写:

java怎么判断一个网站是否可以访问

2、 URL uri= new URL(incon); URI uri= new URI(uri.getProtocol(), uri.getHost(), uri.getPath(), uri.getQuery(), null);//加上这句测试一下带^ 符号的地址,如下图所示。

java怎么判断一个网站是否可以访问

3、URL正确后,后台代码,检查链接是否能打开。URL url;try {url = new URL(urlString);URLConnection co = ur造婷用痃l.openConnection();co.setConnectTimeout(timeOutMillSeconds);co.connect();System.out.println("连接可用");} catch (Exception e1) {System.out.println("连接打不开!");url = null;}

java怎么判断一个网站是否可以访问

4、完整代码如下:package Isvalide;import java.net.URI;import jav锾攒揉敫a.net.URISyntaxException;import java.net.URL;import java.net.URLConnection;/**普通类*/public class IsValide { public static void main(String[] args) { try { System.out.println(isValidUrl("http://www.baidu.com?qww^=23")+"---正确地址"); UrlWithTime("http://www.baidu.com?qww^=23",1000); } catch (Exception e) { System.out.println("链接不正确"); e.printStackTrace(); } } public static void UrlWithTime(String urlString,int timeOutMillSeconds){ long lo = System.currentTimeMillis(); URL url; try { url = new URL(urlString); URLConnection co = url.openConnection(); co.setConnectTimeout(timeOutMillSeconds); co.connect(); System.out.println("连接可用"); } catch (Exception e1) { System.out.println("连接打不开!"); url = null; } System.out.println(System.currentTimeMillis()-lo); } private static final String acceptableSchemes[] = { "http:", "https:", "file:" }; private static boolean urlHasAcceptableScheme(String url) { if (url == null) { return false; } for (int i = 0; i < acceptableSchemes.length; i++) { if (url.startsWith(acceptableSchemes[i])) { return true; } } return false; } private static String isValidUrl(String incommingString) throws Exception{ URL urlObj = new URL(incommingString); URI uriObj = new URI(urlObj.getProtocol(), urlObj.getHost(), urlObj.getPath(), urlObj.getQuery(), null); String scheme = uriObj.getScheme(); if (!urlHasAcceptableScheme(incommingString)) { if (scheme != null) { throw new URISyntaxException("", ""); } } return incommingString; }}

java怎么判断一个网站是否可以访问
  • 红烧红怎么做——家常红烧肉
  • 紫色美甲教程
  • 浙江音乐学院怎么报名
  • 《JAVA学习》:[61]空格的使用
  • 怎么拆卸鄂式破碎机的主要部件
  • 热门搜索
    红颜知己什么意思 你的降落伞是什么颜色 三个吉念什么 凯格尔运动图解 男运动鞋品牌大全 么么什么意思 家用空调什么牌子好 感冒多喝水有什么好处 代发是什么意思 金钻的养殖方法和注意事项