【发布时间】:2016-03-06 09:13:32
【问题描述】:
我尝试在 Square's MockWebServer 上启用 SSL 以模拟我的 Android 应用程序中的所有 Web 服务调用。我想启用 SSL 来获得与真实条件下相同的错误。我不想为测试禁用 SSL 或实现忽略 SSL 的 HTTPClient。
在每次请求时,我都会收到此 javax.net.ssl.SSLPeerUnverifiedExceptionecxeption:
org.springframework.web.client.ResourceAccessException: I/O error on POST request for "https://localhost:42451/api/blabla": No peer certificate; nested exception is javax.net.ssl.SSLPeerUnverifiedException: No peer certificate
看来我需要为 MockWebServer 设置一个证书。但我不知道怎么...
这就是我尝试启用 SSL 的方式:
SSLContext sslContext = new SslContextBuilder(InetAddress.getLocalHost().getHostName()).build();
server.useHttps(sslContext.getSocketFactory(), true);
或者:
SSLContext sslContext = SSLContext.getInstance("SSL");
sslContext.init(null, null, null);
server.useHttps(sslContext.getSocketFactory(), false);
谁能帮忙?
【问题讨论】:
标签: android ssl https square mockwebserver