2016-04-23 72 views
3

匹配這是我在Java的主機名不證書

主機名例外「喇嘛喇嘛bla.com」不匹配對端提供的證書對象(CN = * .bla BLA bla.com,OU = PositiveSSL通配符,OU =域控制驗證)

我已經看到了這個問題:

Ignoring SSL certificate in Apache HttpClient 4.3

我照它的意思做了,但沒有奏效。我已經看到很多與問題有關的問題,但它們都已被棄用。

這是我的代碼:

SSLContextBuilder builder = new SSLContextBuilder(); 
builder.loadTrustMaterial(null, new TrustSelfSignedStrategy()); 
SSLConnectionSocketFactory sslsf = 
    new SSLConnectionSocketFactory(builder.build()); 
CloseableHttpClient httpclient = 
    HttpClients.custom().setSSLSocketFactory(sslsf).build(); 
HttpGet httpGet = new HttpGet("https://b.blablabla.com"); 
CloseableHttpResponse response1 = httpclient.execute(httpGet); 
try { 
    System.out.println(response1.getStatusLine()); 
    HttpEntity entity1 = response1.getEntity(); 
    // do something useful with the response body 
    // and ensure it is fully consumed 
    EntityUtils.consume(entity1); 
} finally { 
    response1.close(); 
} 

我怎樣才能繞過這個證書的事情嗎? 這只是爲了測試;它不是一個真正的生產環境。

+0

不應該是'新的HttpGet(「https://blablanla.com」)'? –

+0

@TamasHegedus實際上,我只是隱藏了實際的域名。錯字,現在更正 –

+0

當然? ''''以及? –

回答

0

在localhost旁邊,您可以將自己的自定義主機名添加到您的開發計算機。示例中使用C:/windows/system32/etc/hosts添加主機名anjadavid.blablabla.com

現在打開瀏覽器並轉到https://anjadavid.blablabla.com,錯誤消失。

相關問題