- 使用时: String result = new Communication().communication("returnObject.action");
- 通信类:
-
- public class Communication {
- public String communication(String urlString){
- HttpClient client = new DefaultHttpClient();
- client.getConnectionManager().closeIdleConnections(20, TimeUnit.SECONDS);//20秒
- String result="";
- String uploadUrl="http://192.168.1.101:8080/SSH"+"/";///http://192.168.10.9/bingo/Server/code
- String MULTIPART_FORM_DATA = "multipart/form-data";
- String BOUNDARY = "---------7d4a6d158c9"; //数据分隔线
- if (!urlString.equals("")) {
- uploadUrl = uploadUrl+urlString;
- try {
- URL url = new URL(uploadUrl);
- HttpURLConnection conn = (HttpURLConnection) url.openConnection();
- conn.setDoInput(true);//允许输入
- conn.setDoOutput(true);//允许输出
- conn.setUseCaches(false);//不使用Cache
- conn.setConnectTimeout(6000);// 6秒钟连接超时
- conn.setReadTimeout(25000);// 25秒钟读数据超时
- conn.setRequestMethod("POST");
- conn.setRequestProperty("Connection", "Keep-Alive");
- conn.setRequestProperty("Charset", "UTF-8");
- conn.setRequestProperty("Content-Type", MULTIPART_FORM_DATA + "; boundary=" + BOUNDARY);
- StringBuilder sb = new StringBuilder();
- //上传的表单参数部分,格式请参考文章
- // for (Map.Entry entry : params.entrySet()) {//构建表单字段内容
- // sb.append("--");
- // sb.append(BOUNDARY);
- // sb.append("\r\n");
- // sb.append("Content-Disposition: form-data; name=\""+ entry.getKey() + "\"\r\n\r\n");
- // sb.append(entry.getValue());
- // sb.append("\r\n");
- // }
- DataOutputStream dos = new DataOutputStream(conn.getOutputStream());
- dos.write(sb.toString().getBytes());
- dos.writeBytes("--" + BOUNDARY + "--\r\n");
- dos.flush();
- InputStream is = conn.getInputStream();
- InputStreamReader isr = new InputStreamReader(is, "utf-8");
- BufferedReader br = new BufferedReader(isr);
- result = br.readLine();
- }catch (Exception e) {
- result = "{\"ret\":\"898\"}";
- }
- }
- return result;
- }
- }
原文地址:
http://blog.youkuaiyun.com/z104207/article/details/6672109,感谢博主