java 使用HttpURLConnection發(fā)送數(shù)據(jù)簡單實例
創(chuàng)新互聯(lián)是一家專業(yè)提供金平企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、成都網(wǎng)站建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、H5建站、小程序制作等業(yè)務(wù)。10年已為金平眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進行中。每個 HttpURLConnection 實例都可用于生成單個請求,但是其他實例可以透明地共享連接到 HTTP 服務(wù)器的基礎(chǔ)網(wǎng)絡(luò)。請求后在 HttpURLConnection 的 InputStream 或 OutputStream 上調(diào)用 close() 方法可以釋放與此實例關(guān)聯(lián)的網(wǎng)絡(luò)資源,但對共享的持久連接沒有任何影響。如果在調(diào)用 disconnect() 時持久連接空閑,則可能關(guān)閉基礎(chǔ)套接字。JAVA使用HttpURLConnection發(fā)送POST數(shù)據(jù)是依靠OutputStream流的形式發(fā)送
實現(xiàn)代碼:
import java.io.*; import java.net.*; public class PostExample { public static void main(String[] argv) throws Exception { URL url = new URL("http://www.javacourses.com/cgi-bin/names.cgi"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("POST"); connection.setDoOutput(true); PrintWriter out = new PrintWriter(connection.getOutputStream()); // encode the message String name = "name="+URLEncoder.encode("Qusay Mahmoud", "UTF-8"); String email = "email="+URLEncoder.encode("qmahmoud@javacourses.com", "UTF-8"); // send the encoded message out.println(name+"&"+email); out.close(); BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream())); String line; while ((line = in.readLine()) != null) { System.out.println(line); } in.close(); } }