【发布时间】:2017-01-09 06:50:24
【问题描述】:
我获得了为 IP 地址(不是通用名称)颁发的证书,我正在尝试使用该证书连接到服务器。
OkHttpClient.Builder builder = new OkHttpClient().newBuilder();
OkHttpClient okHttpClient = builder.build();
Gson gson = new GsonBuilder()
.setLenient()
.create();
retrofit = new Retrofit.Builder()
.baseUrl(url)
.client(okHttpClient)
.addConverterFactory(GsonConverterFactory.create(gson))
.build();
ServerRouts service = retrofit.create(ServerRouts.class);
Resp_json> call = service.login(param, user, pw);
我得到一个错误:
Hostname 11.8.222.333 not verified:
但是当我使用时
builder.hostnameVerifier(new HostnameVerifier() {
@Override
public boolean verify(String hostname, SSLSession session) {
return true;
}
});
然后一切正常。
如何在不关闭主机名验证程序的情况下解决该错误?
附:我为 IP (11.8.222.333) 颁发的证书
【问题讨论】:
-
如果它工作正常,请使用休息客户端检查一次,而不是检查改造问题!
标签: android ssl-certificate retrofit2