注意SSLContextUtil 类请看我上篇
1.xutils3
private void getNet() {
RequestParams param=new RequestParams(“https://kyfw.12306.cn/otn/“);
param.setSslSocketFactory(SSLContextUtil.getSSLContext().getSocketFactory());
x.http().request(HttpMethod.GET, param, new Callback.CommonCallback() {
@Override
public void onSuccess(String result) {
Log.i(“gsc”,result);
}
@Override
public void onError(Throwable ex, boolean isOnCallback) {
Log.i(“gsc”,ex.getMessage());
}
@Override
public void onCancelled(CancelledException cex) {
Log.i("gsc",cex.getMessage());
}
@Override
public void onFinished() {
}
});
}
2 。 NOhttp
private void getNohhtp() {
Request request = NoHttp.createStringRequest(“https://kyfw.12306.cn/otn/“, RequestMethod.GET);
request.setSSLSocketFactory(SSLContextUtil.getDefaultSLLContext().getSocketFactory());
RequestQueue requestQueue = NoHttp.newRequestQueue();
requestQueue.add(1, request, new OnResponseListener() {
@Override
public void onStart(int what) {
}
@Override
public void onSucceed(int what, Response<String> response) {
Log.i("gsc","----"+response.get());
}
@Override
public void onFailed(int what, Response<String> response) {
}
@Override
public void onFinish(int what) {
}
});
}
3. OkHttpUtils;( 作者 泓洋大神)
需要在Application初始化
private void zhyokhttps() {
InputStream ins =null;
try {
ins= getAssets().open(“srca.cer”);
} catch (IOException e) {
e.printStackTrace();
}
HttpsUtils.SSLParams sslParams = HttpsUtils.getSslSocketFactory(new InputStream[]{ins}, null, null);
OkHttpClient okHttpClient = new OkHttpClient.Builder()
.sslSocketFactory(sslParams.sSLSocketFactory, sslParams.trustManager).build();
OkHttpUtils.initClient(okHttpClient);
// OkHttpClientManager.getInstance()
// .setCertificates(getAssets().open(“srca.cer”));
}
#
private void getHy() {
OkHttpUtils.get().url(“https://kyfw.12306.cn/otn/“).build().execute(new StringCallback() {
@Override
public void onError(Call call, Exception e, int id) {
}
@Override
public void onResponse(String response, int id) {
Log.i("gsc","ok=="+response);
}
});
}