带有https的HTTP客户端

时间:2013-01-04 23:17:46

标签: ssl https httpclient apache-httpclient-4.x

使用HTTP组件HTTPClient 4项目使用SSL处理HTTP GET方法的最佳方法是什么? 参数化认证信息的最佳方法是什么?属性文件?重新加载方法到守护进程服务?

    HttpClient httpClient = new DefaultHttpClient();
    String url = "https://xxx.190.2.45/index.jsp";
    HttpGet get = new HttpGet(url);
    try {
                    //TODO
                    HTTPHelper.addSSLSupport(httpClient);
        HttpResponse response = httpClient.execute(get);

        BasicResponseHandler responseHandler = new BasicResponseHandler();
        String responseString = responseHandler.handleResponse(response);

    } catch (ClientProtocolException e) {
        throw new RuntimeException(e);
    } catch (IOException e) {
        throw new RuntimeException(e);
    }

1 个答案:

答案 0 :(得分:1)

您需要启用SSL支持,有关详细信息,请参阅tutorial

我的印象是您正在为服务器使用自签名证书。你可能应该做的是看看获取openssl,为自己创建一个CA&服务器证书。将CA证书(不是私钥)放在“信任存储区”中并配置套接字工厂。

如果您需要更多有关如何执行此操作的详细信息,请对此进行评论,然后我会充实。我在简单的本地项目上取得了巨大的成功!