一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - 談談Java利用原始HttpURLConnection發送POST數據

談談Java利用原始HttpURLConnection發送POST數據

2020-01-10 16:28丁丁·中國電信 JAVA教程

這篇文章主要給大家介紹java利用原始httpUrlConnection發送post數據,設計到httpUrlConnection類的相關知識,感興趣的朋友跟著小編一起學習吧

URLConnection是個抽象類,它有兩個直接子類分別是HttpURLConnection和JarURLConnection。另外一個重要的類是URL,通常URL可以通過傳給構造器一個String類型的參數來生成一個指向特定地址的URL實例。

每個 HttpURLConnection 實例都可用于生成單個請求,但是其他實例可以透明地共享連接到 HTTP 服務器的基礎網絡。請求后在 HttpURLConnection 的 InputStream 或 OutputStream 上調用 close() 方法可以釋放與此實例關聯的網絡資源,但對共享的持久連接沒有任何影響。如果在調用 disconnect() 時持久連接空閑,則可能關閉基礎套接字。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package com.newflypig.demo;
/**
 * 使用jdk自帶的HttpURLConnection向URL發送POST請求并輸出響應結果
 * 參數使用流傳遞,并且硬編碼為字符串"name=XXX"的格式
 */
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
public class SendPostDemo {
  public static void main(String[] args) throws Exception{
    String urlPath = new String("http://localhost:8080/Test1/HelloWorld");
    //String urlPath = new String("http://localhost:8080/Test1/HelloWorld?name=丁丁".getBytes("UTF-8"));
    String param="name="+URLEncoder.encode("丁丁","UTF-8");
    //建立連接
    URL url=new URL(urlPath);
    HttpURLConnection httpConn=(HttpURLConnection)url.openConnection();
    //設置參數
    httpConn.setDoOutput(true);   //需要輸出
    httpConn.setDoInput(true);   //需要輸入
    httpConn.setUseCaches(false);  //不允許緩存
    httpConn.setRequestMethod("POST");   //設置POST方式連接
    //設置請求屬性
    httpConn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
    httpConn.setRequestProperty("Connection", "Keep-Alive");// 維持長連接
    httpConn.setRequestProperty("Charset", "UTF-8");
    //連接,也可以不用明文connect,使用下面的httpConn.getOutputStream()會自動connect
    httpConn.connect();
    //建立輸入流,向指向的URL傳入參數
    DataOutputStream dos=new DataOutputStream(httpConn.getOutputStream());
    dos.writeBytes(param);
    dos.flush();
    dos.close();
    //獲得響應狀態
    int resultCode=httpConn.getResponseCode();
    if(HttpURLConnection.HTTP_OK==resultCode){
      StringBuffer sb=new StringBuffer();
      String readLine=new String();
      BufferedReader responseReader=new BufferedReader(new InputStreamReader(httpConn.getInputStream(),"UTF-8"));
      while((readLine=responseReader.readLine())!=null){
        sb.append(readLine).append("\n");
      }
      responseReader.close();
      System.out.println(sb.toString());
    }
  }
}

JAVA使用HttpURLConnection發送POST數據是依靠OutputStream流的形式發送

具體編碼過程中,參數是以字符串“name=XXX”這種形式發送

以上內容就是本文的全部所述,希望本文介紹對大家有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 小草高清视频免费直播 | sp啪啪调教打屁股网站 | 妇女澡堂淋浴性 | 亚洲男人天堂网址 | 精品小视频在线观看 | 九九热国产视频 | 亚洲欧美在线免费 | 60岁了天天要小伙子 | 国产xxxxxx久色视频在 | 青青青青久久国产片免费精品 | 门卫老张和女警花小说 | 国产视频自拍一区 | 3d欧美人与禽交 | 国产精品日本亚洲777 | 非洲黑人女bbwxxxx | 欧美久久久久久久一区二区三区 | 特黄特色大片免费视频播放 | 欧美另类杂交a | 艾秋麻豆果冻剧传媒在线播放 | 青青草原社区 | 果冻传媒九一制片厂 | 美女尿口照片 | 亚洲AV精品一区二区三区不卡 | 欧美三级小说 | 久久精品亚洲精品国产欧美 | 成人网欧美亚洲影视图片 | 日韩美毛片 | 99热精品69堂国产 | 久久精品国产只有精品 | 国产在线欧美日韩精品一区二区 | 国产日韩精品一区二区在线观看播放 | 全肉np巨肉一女np高h双龙 | 艾秋麻豆果冻剧传媒在线播放 | 国产成人 免费观看 | 91制片厂 果冻传媒 天美传媒 | 大乳奶水bbw | 无人区乱码1区2区3区网站 | 亚洲青草视频 | 亚洲一卡2卡4卡5卡6卡残暴在线 | jj视频免费 | 亚洲首页国产精品丝袜 |