android https post
来源:互联网 发布:微信默认浏览器是淘宝 编辑:程序博客网 时间:2024/06/05 16:57
import java.io.IOException;import java.net.Socket;import java.net.UnknownHostException;import java.security.KeyManagementException;import java.security.KeyStore;import java.security.KeyStoreException;import java.security.NoSuchAlgorithmException;import java.security.UnrecoverableKeyException;import javax.net.ssl.SSLContext;import javax.net.ssl.TrustManager;import javax.net.ssl.X509TrustManager;import org.apache.http.HttpVersion;import org.apache.http.conn.ClientConnectionManager;import org.apache.http.conn.scheme.PlainSocketFactory;import org.apache.http.conn.scheme.Scheme;import org.apache.http.conn.scheme.SchemeRegistry;import org.apache.http.conn.ssl.SSLSocketFactory;import org.apache.http.impl.client.DefaultHttpClient;import org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager;import org.apache.http.params.BasicHttpParams;import org.apache.http.params.HttpParams;import org.apache.http.params.HttpProtocolParams;import org.apache.http.protocol.HTTP;public class SSLSocketFactoryEx extends SSLSocketFactory { public static DefaultHttpClient getNewHttpClient() { try { KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType()); trustStore.load(null, null); SSLSocketFactoryEx sf = new SSLSocketFactoryEx(trustStore); sf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER); HttpParams params = new BasicHttpParams(); HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1); HttpProtocolParams.setContentCharset(params, HTTP.UTF_8); SchemeRegistry registry = new SchemeRegistry(); registry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80)); registry.register(new Scheme("https", sf, 443)); ClientConnectionManager ccm = new ThreadSafeClientConnManager(params, registry); return new DefaultHttpClient(ccm, params); } catch (Exception e) { return new DefaultHttpClient(); } } SSLContext sslContext = SSLContext.getInstance("TLS"); public SSLSocketFactoryEx(KeyStore truststore) throws NoSuchAlgorithmException, KeyManagementException, KeyStoreException, UnrecoverableKeyException { super(truststore); TrustManager tm = new X509TrustManager() { public java.security.cert.X509Certificate[] getAcceptedIssuers() {return null;} @Override public void checkClientTrusted( java.security.cert.X509Certificate[] chain, String authType) throws java.security.cert.CertificateException {} @Override public void checkServerTrusted( java.security.cert.X509Certificate[] chain, String authType) throws java.security.cert.CertificateException {} }; sslContext.init(null, new TrustManager[] { tm }, null); } @Override public Socket createSocket(Socket socket, String host, int port,boolean autoClose) throws IOException, UnknownHostException { return sslContext.getSocketFactory().createSocket(socket, host, port,autoClose); } @Override public Socket createSocket() throws IOException { return sslContext.getSocketFactory().createSocket(); } }
public String POST(String url,String postdata) {long last = System.currentTimeMillis(); String result =""; System.out.println(url); try{ System.out.println(url); HttpPost hPost=new HttpPost(url); List <NameValuePair> params=new ArrayList<NameValuePair>(); String posts[]=postdata.split("&"); String posts2[]; int i; for(i=0;i<posts.length;i++) { posts2=posts[i].split("="); if(posts2.length==2) params.add(new BasicNameValuePair (posts2[0],posts2[1])); else params.add(new BasicNameValuePair (posts2[0],"")); } HttpEntity hen=new UrlEncodedFormEntity(params,"gb2312"); hPost.setEntity(hen); HttpClient httpclient = SSLSocketFactoryEx.getNewHttpClient(); httpclient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 30000); //请求超时 httpclient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 30000); //读取超时 HttpResponse hResponse; hResponse = httpclient.execute(hPost); long delaytime = System.currentTimeMillis()-last; System.out.println(shangwang.delaytime); if(hResponse.getStatusLine().getStatusCode()==200) { result = EntityUtils.toString(hResponse.getEntity()); //result = new String(result.getBytes("ISO_8859_1"),"gbk"); //转码 } } catch (Exception e) { e.printStackTrace(); } return(result); }
0 0
- android https post
- android用https发送post请求
- android用https发送post请求
- https post
- 分享一段Android基于https协议POST数据的代码
- Android中的Https网络请求get和post
- CURL HTTPS POST
- QT https post请求
- PHP CURL HTTPS POST
- PHP CURL HTTPS POST
- QT https post请求
- PHP CURL HTTPS POST
- https 的post数据
- https发送post请求
- post请求https接口
- HTTPS POST持续修改
- http https get post
- php https的GET POST
- 代理模式
- ubuntu_eclipse:An error has occurred. See the log
- 建造者模式
- JAVA调用RabbitMQ,附安装过程
- Unity AssetBundle的使用
- android https post
- 模版方法模式
- 【iOS开发-9】UIImage和UIImageView属性介绍,实现图片动画,实现开始/停止按钮效果
- spring MVC 导出excel
- ANTLR4权威指南 - 第7章 通过特定应用程序代码解耦语法
- 用户空间栈 & 系统空间栈
- _HEAP_LOOKASIDE
- UiObejct.getFromParent()
- 抽象工厂模式