how to find out the response code(200,404,400...) of the URL?

一 :需求:写一个Junit测试链接可用。

public void linksAndWikiPages() throws Exception {
		List<String> urlList = new ArrayList <String> ();
		urlList.add("");		
		try {
	        for(int u=0;u<urlList.size();u++){
	        	System.setProperty("javax.net.ssl.trustStore","C:/crt");//this is point
	        	String href = urlList.get(u);
	        	selenium.shutDownSeleniumServer();
	        	URL url = new URL(href);
		        URLConnection  connection = url.openConnection();
	            if(connection instanceof HttpURLConnection){
	            	HttpURLConnection httpConnection = (HttpURLConnection) connection;
	            	int code = httpConnection.getResponseCode();
	            	assertEquals(code, 200);
	            }else{
	            	System.out.println();
	            }
	        }
			
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}


二 :有一些网站经过SSL加密的,所以必须在本地添加秘钥证书,才可以用上面的方式测试URL的连通性。要不然会遇到运行时异常:

javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: Java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty



打开你要测试的网址,然后导出网站的SSL证书,c:/crt

用記事本打開類似:

-----BEGIN CERTIFICATE-----
MIIDITCCAoqgAwIBAgIQS6WuWd7dHMeAfIkikfDiQzANBgkqhkiG9w0BAQQFADBM
MQswCQYDVQQGEwJaQTElMCMGA1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkg
THRkLjEWMBQGA1UEAxMNVGhhd3RlIFNHQyBDQTAeFw0wNjA1MTUyMzE4MTFaFw0w
j8thQJ7StDhAISTBTx/LE0qPlQLfkT3WQOsRb5sQoW/OkV4w9m0TXhWkLsIYngDD
2DJnR/y4HprZmo7M/3wStwO/UiDPIfTzd90SFfCU+pDV41logQ==
-----END CERTIFICATE-----

System.setProperty("javax.net.ssl.trustStore","c:/crt");

在这个%JAVA_HOME%/bin/keytool.exe有个keytool工具,也是将你网站的证书文件加到本地环境中。

%JAVA_HOME%\bin\keytool -import -file 'parm1' -keystore 'parm2'

parm1是导入证书的文件名称(crt)

parm1是导入证书的文件所在文件夹(c:/)

导入过程中会提示用户输入密码,这个用户名和密码都是任意的。



         

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值