使用循环访问URL

时间:2013-08-12 06:12:26

标签: java url

我创建了一个Web应用程序,并托管在服务器上。现在我想创建一个java程序,它将在循环中访问(或“点击”)我的应用程序的URL,以便我可以检查我的Web应用程序可以处理多少负载。此外,该程序应该能够告诉我何时成功访问URL,以及何时没有。

我尝试不使用循环执行它:

try {
        URL url = new URL("https://example.com/");
        BufferedReader in = new BufferedReader(
                new InputStreamReader(url.openStream()));

        String inputLine;
        while ((inputLine = in.readLine()) != null) {
            System.out.println(inputLine);
        }
        in.close();
    } catch (Exception e) {
        System.out.println("e: " + e.toString());
    }

但是,我收到了这个错误:

e: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No  subject alternative DNS name matching example.com found.

2 个答案:

答案 0 :(得分:2)

使用,

javax.net.ssl.HttpsURLConnection

连接到https://

等等(请注意,处理资源关闭,异常等等)

final URL url = new URL("https://example.com");
final HttpsURLConnection con = (HttpsURLConnection)url.openConnection();
final BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream()));
String input;

while ((input = br.readLine()) != null){
    System.out.println(input);
}

但是有很多工具可用于加载测试

答案 1 :(得分:0)

您只是从网址获取流,但显然此网址使用的是HTTPS,因此您需要将“公钥”导入您的客户端应用程序。否则客户端和服务器将无法相互通信。