HTTP使用get,post方式连接

在项目中使用了http的get和post方式连接,发送传输数据;

public static String doGet(String httpUrl) {
        HttpURLConnection conn = null;
        InputStream is = null;
        BufferedReader br = null;
        String result = null;
        try {
            //创建远程url链接
            URL url = new URL(httpUrl);
            //通过远程URL连接对象打开一个连接
            conn = (HttpURLConnection) url.openConnection();
            //设置连接方式为get
            conn.setRequestMethod("GET");
            //设置连接主机服务器的超时时间
            conn.setConnectTimeout(15000);
            //设置读取远程返回的数据时间
            conn.setReadTimeout(60000);
            //发送请求
            conn.connect();
            //通过连接,获取输入流
            if(conn.getResponseCode() == 200) {
                is = conn.getInputStream();
                //封装输入流is,并指定字符集
                br = new BufferedReader(new InputStreamReader(is,"UTF-8"));
                //存放数据
                StringBuffer sbf = new StringBuffer();
                String temp = null;
                while((temp = br.readLine()) != null) {
                    sbf.append(temp);
                }
                result = sbf.toString();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            close(conn,is,null,br);
        }
        return result;
    }
    
    public static String doPost(String httpUrl,String param) {
        HttpURLConnection conn = null;
        InputStream is = null;
        OutputStream os = null;
        BufferedReader br = null;
        String result = null;
        try {
            //创建远程url链接
            URL url = new URL(httpUrl);
            //通过远程URL连接对象打开一个连接
            conn = (HttpURLConnection) url.openConnection();
            //设置连接方式为get
            conn.setRequestMethod("POST");
            //设置连接主机服务器的超时时间
            conn.setConnectTimeout(15000);
            //设置读取远程返回的数据时间
            conn.setReadTimeout(60000);
            
            //默认设置为false,当向远程服务器传输/写数据
            conn.setDoInput(true);
            //默认设置为true,当前向远程服务器时,设置为true,该参数可有可无
            conn.setDoOutput(true);
            //设置传入参数的格式:请求参数应该是name1 = value1,name2 = value2的形式
            conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
            //通过连接对象获取一个输出流
            os = conn.getOutputStream();
            //通过输出流对象将数据写出去
            os.write(param.getBytes("UTF-8"));
            //通过连接,获取输入流
            if(conn.getResponseCode() == 200) {
                is = conn.getInputStream();
                //封装输入流is,并指定字符集
                br = new BufferedReader(new InputStreamReader(is,"UTF-8"));
                //存放数据
                StringBuffer sbf = new StringBuffer();
                String temp = null;
                while((temp = br.readLine()) != null) {
                    sbf.append(temp);
                }
                result = sbf.toString();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            close(conn,is,null,br);
        }
        return result;
    }
原文地址:https://www.cnblogs.com/pluto-charon/p/11221283.html