public class HttpUrl { /** * HttpURLConnection的post请求 * @param urlPath * @param map * @return */ public static String postUrlConnect(String urlPath, Map<String,Object> map){ StringBuffer sbRequest =new StringBuffer(); if(map!=null&&map.size()>0){ for (String key:map.keySet()){ sbRequest.append(key+"="+map.get(key)+"&"); } } String request = sbRequest.substring(0,sbRequest.length()-1); try { //创建URL URL url = new URL(urlPath); //由URL的openConnection方法得到一个HttpURLConnection(需要强转) HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection(); //设置post提交 httpURLConnection.setRequestMethod("POST"); //设置超时时间 httpURLConnection.setConnectTimeout(30000); httpURLConnection.setReadTimeout(30000); httpURLConnection.setDoInput(true); httpURLConnection.setDoOutput(true); //把请求正文通过OutputStream发出去 OutputStream os =httpURLConnection.getOutputStream(); os.write(request.getBytes()); os.flush(); //判断响应码 200 代表成功 if(httpURLConnection.getResponseCode()==200){ //由HttpURLConnection拿到输入流 InputStream in=httpURLConnection.getInputStream(); StringBuffer sb=new StringBuffer(); //根据输入流做一些IO操作 byte [] buff =new byte[1024]; int len=-1; while((len=in.read(buff))!=-1){ sb.append(new String(buff,0,len,"utf-8")); } in.close(); os.close(); httpURLConnection.disconnect(); return sb.toString(); }else{ return null; } }catch (Exception e){ Log.e("post","code:"+e.getMessage()); return null; } } /** * HttpURLConnection的get请求 * @param urlPath * @return */ public static String getUrlConnect(String urlPath){ Log.e("getUrlConnect", "getUrlConnect--- "+urlPath ); try { //创建URL URL url = new URL(urlPath); //由URL的openConnection方法得到一个HttpURLConnection(需要强转) HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection(); //设置连接 httpURLConnection.connect(); //判断响应码 200 代表成功 int code = httpURLConnection.getResponseCode(); if(code==200){ //由HttpURLConnection拿到输入流 InputStream in=httpURLConnection.getInputStream(); StringBuffer sb=new StringBuffer(); //根据输入流做一些IO操作 byte [] buff =new byte[1024]; int len=-1; while((len=in.read(buff))!=-1){ sb.append(new String(buff,0,len,"utf-8")); } in.close(); httpURLConnection.disconnect(); return sb.toString(); }else{ return null; } } catch (Exception e) { e.printStackTrace(); } return null; } }
Android-----HttpURLConnection的 get 请求和 post 请求
最新推荐文章于 2024-03-06 17:06:01 发布