accept cnblogs method help ade println 取数 lac
package cn.com.taiji.oosweb.httpserver;
import java.io.BufferedReader;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import java.io.OutputStreamWriter;import java.io.PrintWriter;import java.net.MalformedURLException;import java.net.URL;import java.net.URLConnection;
import cn.com.taiji.oosweb.manager.helper.JsonUtil;import cn.com.taiji.oosweb.web.wx.authdeny.NetTools;
import net.sf.json.JSONObject;
public class method { static String appsecret =""; static String appId ="";
@SuppressWarnings("deprecation") public static void main(String[] args) { appId = "wx2faec6d97bb8d50a"; appsecret = "ed4a837d65d26018e4eb96cc1006c078"; String requestUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET"; //获取access_token requestUrl = requestUrl.replace("APPID", appId); requestUrl = requestUrl.replace("APPSECRET", appsecret); JSONObject jsonObject = NetTools.httpsRequest(requestUrl, "GET", null); String access_token = (String) jsonObject.get("access_token"); String str = getTemporaryQR("910000000010000000001000000000",access_token); JSONObject jsonObject1 = JsonUtil.getJSONObject(str); System.err.println(jsonObject1.get("url")); String mblbUrl = "https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket="+java.net.URLEncoder.encode((String) jsonObject1.get("ticket")); System.err.println((String) jsonObject1.get("ticket"));// mblbUrl = mblbUrl.replace("TICKET",java.net.URLEncoder.encode((String) jsonObject1.get("ticket")) );// System.err.println(mblbUrl); JSONObject mblb = NetTools.httpsRequest(mblbUrl, "GET", null);// System.out.println(mblb); downloadFile(mblbUrl,"C:/"); } public static Boolean downloadFile(String urlString, String filePath){ // 构造URL URL url; try { url = new URL(urlString); // 打开连接 URLConnection con; try { con = url.openConnection(); // 输入流 InputStream is = con.getInputStream(); // 1K的数据缓冲 byte[] bs = new byte[1024]; // 读取到的数据长度 int len; // 输出的文件流 OutputStream os = new FileOutputStream(filePath); // 开始读取 while ((len = is.read(bs)) != -1) { os.write(bs, 0, len); } // 完毕,关闭所有链接 os.close(); is.close(); return true; } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } } public static String getTemporaryQR(String scene_id,String access_token){ //获取数据的地址(微信提供) String url = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token="+access_token;
//发送给微信服务器的数据 String jsonStr = "{\"expire_seconds\": 2592000,\"action_name\": \"QR_SCENE\", \"action_info\": {\"scene\": {\"scene_id\": "+scene_id+"}}}";
//将得到的字符串转化成json对象 String response = sendPost(jsonStr, url); return response.toString(); } public static String sendPost(String param, String url) { PrintWriter out = null; BufferedReader in = null; String result = ""; try { URL realUrl = new URL(url); // 打开和URL之间的连接 URLConnection conn = realUrl.openConnection(); // 设置通用的请求属性 conn.setRequestProperty("accept", "*/*"); conn.setRequestProperty("connection", "Keep-Alive"); conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)"); // 发送POST请求必须设置如下两行 conn.setDoOutput(true); conn.setDoInput(true); // 获取URLConnection对象对应的输出流 // out = new PrintWriter(conn.getOutputStream()); out = new PrintWriter(new OutputStreamWriter( conn.getOutputStream(), "utf-8")); // 发送请求参数 out.print(param); // flush输出流的缓冲 out.flush(); // 定义BufferedReader输入流来读取URL的响应 in = new BufferedReader(new InputStreamReader( conn.getInputStream(), "UTF-8")); String line; while ((line = in.readLine()) != null) { result += line; } } catch (Exception e) { System.out.println("发送 POST 请求出现异常!" + e); e.printStackTrace(); } // 使用finally块来关闭输出流、输入流 finally { try { if (out != null) { out.close(); } if (in != null) { in.close(); } } catch (IOException ex) { ex.printStackTrace(); } } return result; }
}
来源: http://www.bubuko.com/infodetail-2087313.html