android http和https,android http 和https请求

private static final String TAG = "HttpManager";private static final int CONNECT_TIME_OUT = 5000;public staticString doHttpPost(String sUrl, String xml) {if(TextUtils.isEmpty(sUrl)) {

Log.e(TAG,"http post url is empty!");return "";

}if (sUrl.indexOf("https") > -1) {

Log.e(TAG,"https post!");return "";

}

HttpURLConnection conn= null;try{

URL url= newURL(sUrl);

conn=(HttpURLConnection)url.openConnection();

conn.setConnectTimeout(CONNECT_TIME_OUT);

conn.setRequestMethod("POST");//必须大写

conn.setDoOutput(true);

conn.setChunkedStreamingMode(0);

writeOutputStream(conn.getOutputStream(), xml);if (conn.getResponseCode() ==HttpURLConnection.HTTP_OK) {returnreadInputStream(conn.getInputStream());

}

}catch(IOException e) {

e.printStackTrace();

}finally{if (conn != null) {

conn.disconnect();

conn= null;

}

}return "";

}public staticString doHttpsPost(String sUrl, String xml) {if(TextUtils.isEmpty(sUrl)) {

Log.e(TAG,"https post url is empty!");return "";

}if (sUrl.indexOf("https") > -1) {

trustEveryone();

HttpsURLConnection conn= null;try{

URL url= newURL(sUrl);

conn=(HttpsURLConnection)url.openConnection();

conn.setConnectTimeout(CONNECT_TIME_OUT);

conn.setRequestMethod("POST");//必须大写

conn.setDoOutput(true);

conn.setChunkedStreamingMode(0);

writeOutputStream(conn.getOutputStream(), xml);if (conn.getResponseCode() ==HttpURLConnection.HTTP_OK) {returnreadInputStream(conn.getInputStream());

}

}catch(IOException e) {

e.printStackTrace();

}finally{if (conn != null) {

conn.disconnect();

conn= null;

}

}

}return "";

}private static voidwriteOutputStream(OutputStream out, String outParams) {

OutputStreamWriter writer= null;try{

writer= new OutputStreamWriter(out, "UTF-8");

writer.write(outParams);

}catch(UnsupportedEncodingException e) {

e.printStackTrace();

}catch(IOException e) {

e.printStackTrace();

}finally{if (writer != null) {try{

writer.flush();

writer.close();

}catch(IOException e) {

e.printStackTrace();

}

}

}

}private staticString readInputStream(InputStream in) {

StringBuilder builder= newStringBuilder();

BufferedReader reader= null;try{

reader= new BufferedReader(newInputStreamReader(in));

String buffer= "";while ((buffer = reader.readLine()) != null) {

builder.append(buffer);

}

}catch(IOException e) {

e.printStackTrace();

}finally{try{if (reader != null) {

reader.close();

reader= null;

}

}catch(IOException e) {

e.printStackTrace();

}

}returnbuilder.toString();

}private static voidtrustEveryone() {try{

HttpsURLConnection.setDefaultHostnameVerifier(newHostnameVerifier() {

@Overridepublic booleanverify(String hostname, SSLSession session) {return true;

}

});

SSLContext context= SSLContext.getInstance("TLS");

context.init(null, newX509TrustManager[] {newX509TrustManager() {public voidcheckClientTrusted(X509Certificate[] chain, String authType)throwsCertificateException {

}public voidcheckServerTrusted(X509Certificate[] chain, String authType)throwsCertificateException {

}publicX509Certificate[] getAcceptedIssuers() {return new X509Certificate[0];

}

}

},null);

HttpsURLConnection.setDefaultSSLSocketFactory(context.getSocketFactory());

}catch(Exception e) {

e.printStackTrace();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值