Java_HttpURLConnection使用

5612 ワード

HttpURLConnectionを使用してget/post要求を実行することを含みます.
 
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
50
51
52
53
54
55
56
57
58packagecom.cn.testproject;importjava.io.ByteArrayOutputStream;importjava.io.IOException;importjava.io.InputStream;importjava.io.OutputStream;importjava.net.HttpURLConnection;importjava.net.URL;publicclassHttpConnectionUrlDemo {    publicstaticvoidmain(String[] args) throwsException {        //get();        post();     }     publicstaticvoidget() throwsException {        String path = "http://www.baidu.com";        URL url = newURL(path);        HttpURLConnection conn = (HttpURLConnection) url.openConnection();        conn.setConnectTimeout(5* 1000);        conn.setRequestMethod("GET");        InputStream inStream = conn.getInputStream();        byte[] data = toByteArray(inStream);        String result = newString(data, "UTF-8");        System.out.println(result);     }     publicstaticvoidpost() throwsException {        String encoding = "UTF-8";        //post form (json )        String params = "[{\"addTime\":\"2011-09-19 14:23:02\"[],\"iccid\":\"1111\",\"id\":0,\"imei\":\"2222\",\"imsi\":\"3333\",\"phoneType\":\"4444\",\"remark\":\"aaaa\",\"tel\":\"5555\"}]";        String path = "http://www.baidu.com";        byte[] data = params.getBytes(encoding);        URL url = newURL(path);        HttpURLConnection conn = (HttpURLConnection) url.openConnection();        conn.setRequestMethod("POST");        conn.setDoOutput(true);              conn.setRequestProperty("Content-Type", "application/x-javascript; charset="+ encoding);        conn.setRequestProperty("Content-Length", String.valueOf(data.length));        conn.setConnectTimeout(5* 1000);        OutputStream outStream = conn.getOutputStream();        outStream.write(data);        outStream.flush();        outStream.close();        System.out.println(conn.getResponseCode()); // 200         if(conn.getResponseCode() == 200) {            InputStream inStream = conn.getInputStream();            String result = newString(toByteArray(inStream), "UTF-8");            System.out.println(result); // 200         }    }    privatestaticbyte[] toByteArray(InputStream input) throwsIOException {        ByteArrayOutputStream output = newByteArrayOutputStream();        byte[] buffer = newbyte[4096];        intn = 0;        while(-1!= (n = input.read(buffer))) {            output.write(buffer, 0, n);        }        returnoutput.toByteArray();    }}