无关风月
2024-08-20 f237a61c412870933f47316a011237cd538de9bc
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
package com.stylefeng.guns.modular.system.util;
 
import net.sf.json.JSONObject;
 
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
 
public class HttpUtilIOS {
    /**  
     * 向指定 URL 发送POST方法的请求  
     *   
     * @param url  
     *            发送请求的 URL  
     * @param param  
     *            请求参数,请求参数应该是 name1=value1&name2=value2 的形式。  
     * @return 所代表远程资源的响应结果  
     */    
    public static  synchronized String sendPosturl(String url, JSONObject param) {   
          
           
        StringBuilder sb = new StringBuilder();    
        PrintWriter out = null;    
        BufferedReader in = null;    
        try {    
            URL realUrl = new URL(url);    
            // 打开和URL之间的连接    
            URLConnection conn = realUrl.openConnection();    
            // 设置通用的请求属性    
            conn.setRequestProperty("accept", "*/*"); 
            conn.setRequestProperty("connection", "Keep-Alive");    
            conn.setRequestProperty("user-agent","Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36");    
            // 发送POST请求必须设置如下两行    
            conn.setDoOutput(true);    
            conn.setDoInput(true);   
            // 获取URLConnection对象对应的输出流    
            out = new PrintWriter(conn.getOutputStream());    
            // 发送请求参数    
            out.print(param);    
            // flush输出流的缓冲    
            out.flush();    
            // 定义BufferedReader输入流来读取URL的响应    
            in = new BufferedReader(new InputStreamReader(conn.getInputStream()));    
            String line;    
            sb = new StringBuilder();   
              
            while ((line = in.readLine()) != null)   
            {  
                sb.append(line);    
            }    
        } catch (Exception e) {    
           // System.out.println("发送 POST 请求出现异常!"+e);    
            e.printStackTrace();    
        }    
        //使用finally块来关闭输出流、输入流    
        finally{    
            try{    
                if(out!=null){    
                    out.close();    
                }    
                if(in!=null){    
                    in.close();    
                }    
            }    
            catch(IOException ex){    
                ex.printStackTrace();    
            }    
        }    
        System.out.print(sb.toString());
        return sb.toString();    
    }     
    
}