import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.HttpURLConnection;import java.net.URL;public class HttpPost { /** * 發(fā)送 post 請求 * @param uri 請求的 url * @param param 請求的 參數(shù),以"a=1&b=2" 的格式 * @param charset 編碼。英文編碼:"utf-8",中文編碼:"gbk" * @return */ public static String sendPost(String uri, String param, String charset) { String result = null; PrintWriter out = null; InputStream in = null; try { URL url = new URL(uri); HttpURLConnection urlcon = (HttpURLConnection) url.openConnection(); urlcon.setDoInput(true); urlcon.setDoOutput(true); urlcon.setUseCaches(false); urlcon.setRequestMethod("POST"); urlcon.connect();// 獲取連接 out = new PrintWriter(urlcon.getOutputStream()); out.print(param); out.flush(); in = urlcon.getInputStream(); BufferedReader buffer = new BufferedReader(new InputStreamReader( in, charset)); StringBuffer bs = new StringBuffer(); String line = null; while ((line = buffer.readLine()) != null) { bs.append(line); } result = bs.toString(); } catch (Exception e) { System.out.println("[請求異常][地址:" + uri + "][參數(shù):" + param + "][錯(cuò)誤信息:" + e.getMessage() + "]"); } finally { try { if (null != in) { in.close(); } if (null != out) { out.close(); } } catch (Exception e2) { System.out.println("[關(guān)閉流異常][錯(cuò)誤信息:" + e2.getMessage() + "]"); } } return result; } public static void main(String[] args) { String url = "http://mis.teach.ustc.edu.cn/kbcx.do"; String result = sendPost(url, "xq=20181&xklb=b&cxfs=0", "gbk"); System.out.println(result); }}
聯(lián)系客服