java 微信开发的工具类WeChatUtils
微信工具类需要的其他方法
/** * 发送HttpPost请求 * * @param strURL 服务地址 * @param params json字符串,例如: "{ "id":"12345" }" ;其中属性名必须带双引号<br/> * @return 成功:返回json字符串<br/> */ public static Map<String, Object> reqPost(String strURL, String params) { BufferedReader reader; try { URL url = new URL(strURL);// 创建连接 HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setDoOutput(true); connection.setDoInput(true); connection.setUseCaches(false); connection.setInstanceFollowRedirects(true); connection.setRequestMethod("POST"); // 设置请求方式 connection.setRequestProperty("Accept", "application/json"); // 设置接收数据的格式 connection.setRequestProperty("Content-Type", "application/json"); // 设置发送数据的格式 connection.connect(); //一定要用BufferedReader 来接收响应, 使用字节来接收响应的方法是接收不到内容的 OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream(), "UTF-8"); // utf-8编码 out.append(params); out.flush(); out.close(); // 读取响应 reader = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8")); String line; String res = ""; while ((line = reader.readLine()) != null) { res += line; } reader.close(); return JSON.parseObject(res, Map.class); } catch (IOException e) { e.printStackTrace(); return null; } } /** * 请求url * * @param url * @return */ public static Map<String, Object> reqGetMap(String url) { try { URL reqURL = new URL(url); HttpsURLConnection openConnection = (HttpsURLConnection) reqURL.openConnection(); openConnection.setConnectTimeout(10000); //这里我感觉获取openid的时间比较长,不过也可能是我网络的问题, //所以设置的响应时间比较长 openConnection.connect(); InputStream in = openConnection.getInputStream(); StringBuilder builder = new StringBuilder(); BufferedReader bufreader = new BufferedReader(new InputStreamReader(in)); for (String temp = bufreader.readLine(); temp != null; temp = bufreader .readLine()) { builder.append(temp); } String result = builder.toString(); in.close(); openConnection.disconnect(); Map<String, Object> resultMap = JSON.parseObject(result, Map.class); return resultMap; } catch (Exception e) { e.printStackTrace(); return null; } }
上一篇:
Python 安装包管理工具 pip
下一篇:
SQL注入特殊字符(备查)