近日接触了微信号开发,调接口时要发送网络请求
下面是网络请求代码:
import net.sf.json.JSONObject;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
public class test {
private static final String https_url1 = "https://qyapi.xxx.qq.com/cgi-bin/user/xxx?access_token=ACCESS_TOKEN";
public static void getUserByUserTicket( String t,String token) {
String userTicket = t;//"J2bUGLuCNXGGEhpqITZ254LCQNsJxU_oedqDLy5k2KDr9WSLlp8jX9vXef3lHp1NsR4QwcXtTR6DTjHvGWjsqqCf3WJ4ezGmLz8WyukI03I";
String post_url = https_url1.replace("ACCESS_TOKEN", token);
String retMsg = "";
JSONObject obj = null;
JSONObject sendObj = new JSONObject();
sendObj.put("user_ticket",userTicket);
System.out.println("send:"+sendObj.toString());
try {
URL url = new URL(post_url);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setConnectTimeout(5000);
conn.setReadTimeout(5000);
conn.setDoOutput(true);
conn.setDoInput(true);
// 设置文件类型:
conn.setRequestProperty("contentType", "application/json");
//传输开始
conn.connect();
OutputStream out = conn.getOutputStream();
// 写入请求的字符串
out.write((sendObj.toString()).getBytes());
out.flush();
out.close();
System.out.println("传输标识代码"+conn.getResponseCode());
InputStream sendStatus = conn.getInputStream();
int size = sendStatus.available();
byte[] jsonBytes = new byte[size];
sendStatus.read(jsonBytes);
retMsg = new String(jsonBytes, "UTF-8");
sendStatus.close();
conn.disconnect();
obj = JSONObject.fromObject(retMsg);
} catch (Exception e) {
e.printStackTrace();
}
System.out.println(obj.toString());
}
}