java使用Post方式发送https请求的方法,直接可以用

踩过无数坑之后,成功的方案,主要在设置Content-type application/x-www-form-urlencoded这里,之前没设置,一直数据不通过,不过好了现在OK了

URL reqURL = new URL(url); //创建URL对象

HttpURLConnection httpsConn = (HttpURLConnection)reqURL.openConnection(); httpsConn.setDoOutput(true); httpsConn.setRequestMethod("POST"); httpsConn.setRequestProperty("Content-type", "application/x-www-form-urlencoded"); httpsConn.setRequestProperty("Accept-Charset", "utf-8"); httpsConn.setRequestProperty("contentType", "utf-8"); httpsConn.setRequestProperty("Content-Length", stringA.length() + ""); OutputStreamWriter out = new OutputStreamWriter(httpsConn.getOutputStream(),"utf-8"); out.write(stringA.toString()); out.flush(); out.close(); //取得该连接的输入流,以读取响应内容 InputStreamReader insr = new InputStreamReader(httpsConn.getInputStream(),"utf-8"); //读取服务器的响应内容并显示 String result = ""; int respInt = insr.read(); while(respInt != -1){ result += (char)respInt; respInt = insr.read(); }

经验分享 程序员 微信小程序 职场和发展