首页 > 代码库 > 发起https请求并获取结果

发起https请求并获取结果

/**
     * 发起https请求并获取结果
     *
     * @param requestUrl
     *            请求地址
     * @param requestMethod
     *            请求方式
     * @param outputStr
     *            请求数据
     * @return
     * @throws Exception
     */
    public static String MsgHttpsRequest(String requestUrl, String requestMethod, String outputStr) throws Exception {
        System.out.println("--MsgHttpsRequest--requestUrl---" + requestUrl);
        try {
            URL url = new URL(requestUrl);
            HttpURLConnection http = (HttpURLConnection) url.openConnection();

            http.setRequestMethod(requestMethod);
            http.setRequestProperty(Const.HTTP_CONTENT_TYPE, Const.HTTP_CONTENT_TYPE_VALUE);
            http.setDoOutput(true);
            http.setDoInput(true);
            System.setProperty(Const.HTTP_CONNECT_TIMEOUT, "30000");// 连接超时30秒
            System.setProperty(Const.HTTP_READ_TIMEOUT, "30000"); // 读取超时30秒

            http.connect();
            // 请求数据不为空时
            if (outputStr != null && !"".equals(outputStr)) {
                OutputStream os = http.getOutputStream();
                os.write(outputStr.getBytes("UTF-8"));// 传入参数
                os.flush();
                os.close();
            }
            InputStream is = http.getInputStream();
            int size = is.available();
            byte[] jsonBytes = new byte[size];
            is.read(jsonBytes);
            String message = new String(jsonBytes, "UTF-8");
            return message.toString();
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return "创建失败!!!";
    }

发起https请求并获取结果