java 通过http方式获取返回的数据
2012-04-09 11:06
621 查看
/**
* 通过http方式获取返回的数据
*
* @param url
* 请求地址
* @param requestData
* 请求数据
* @param charset
* 字符集编码
* @return
* @throws Exception
*/
public static String post(String urlStr, String requestData, String charset)
throws Exception {
URL url = null;
HttpURLConnection conn = null;
ByteArrayOutputStream byteArray = null;
String temp;
try {
url = new URL(urlStr);
conn = (HttpURLConnection) url.openConnection(); // 打开,创建Connection对象
conn.setRequestMethod("POST"); // 设定请求方式为POST
conn.setDoOutput(true); // 一定要设为true,因为要发送数据
// 下面开始设定Http头
// conn.setRequestProperty("Content-Type",
// "multipart/form-data; boundary=Bounday---");
conn.setRequestProperty("Content-Type", "text/xml;charset=utf-8");
conn.setRequestProperty("Cache-Control", "no-cache");
conn.setRequestProperty("Connection", "close");
conn.setConnectTimeout(60000);
// 传送送据
OutputStream buf = conn.getOutputStream();
buf = new BufferedOutputStream(buf);
OutputStreamWriter out = new OutputStreamWriter(buf);
out.write(requestData);
out.flush(); // 这个一定要,清空缓存,发送数据
out.close();
// 接收数据
InputStream in = conn.getInputStream();
byteArray = new ByteArrayOutputStream(in.available());
byte[] b = new byte[8192];
int len = -1;
while ((len = in.read(b)) != -1) {
byteArray.write(b, 0, len);
}
in.close();
temp = byteArray.toString(charset);
} catch (Exception e) {
throw e;
} finally {
if (conn != null) {
conn.disconnect();
}
}
return temp;
}
* 通过http方式获取返回的数据
*
* @param url
* 请求地址
* @param requestData
* 请求数据
* @param charset
* 字符集编码
* @return
* @throws Exception
*/
public static String post(String urlStr, String requestData, String charset)
throws Exception {
URL url = null;
HttpURLConnection conn = null;
ByteArrayOutputStream byteArray = null;
String temp;
try {
url = new URL(urlStr);
conn = (HttpURLConnection) url.openConnection(); // 打开,创建Connection对象
conn.setRequestMethod("POST"); // 设定请求方式为POST
conn.setDoOutput(true); // 一定要设为true,因为要发送数据
// 下面开始设定Http头
// conn.setRequestProperty("Content-Type",
// "multipart/form-data; boundary=Bounday---");
conn.setRequestProperty("Content-Type", "text/xml;charset=utf-8");
conn.setRequestProperty("Cache-Control", "no-cache");
conn.setRequestProperty("Connection", "close");
conn.setConnectTimeout(60000);
// 传送送据
OutputStream buf = conn.getOutputStream();
buf = new BufferedOutputStream(buf);
OutputStreamWriter out = new OutputStreamWriter(buf);
out.write(requestData);
out.flush(); // 这个一定要,清空缓存,发送数据
out.close();
// 接收数据
InputStream in = conn.getInputStream();
byteArray = new ByteArrayOutputStream(in.available());
byte[] b = new byte[8192];
int len = -1;
while ((len = in.read(b)) != -1) {
byteArray.write(b, 0, len);
}
in.close();
temp = byteArray.toString(charset);
} catch (Exception e) {
throw e;
} finally {
if (conn != null) {
conn.disconnect();
}
}
return temp;
}
相关文章推荐
- 通过HTTP方式获取URL返回结果数据(Java)
- Java 通过HttpClient Post方式提交json,并从服务端返回json数据
- Java 通过HttpURLConnection Post方式提交json,并从服务端返回json数据
- Java 通过HttpURLConnection Post方式提交json,并从服务端返回json数据
- Java 通过HttpURLConnection Post方式提交xml,并从服务端返回数据
- Java 通过HttpURLConnection Post方式提交json,并从服务端返回json数据
- Java 通过HttpURLConnection Post方式提交json,并从服务端返回json数据
- Java 通过httpClient Post方式提交xml,并从服务端返回数据
- Java 通过HttpURLConnection Post方式提交xml,并从服务端返回数据
- Java获取http和https协议返回的json数据
- java后台接收android客户端通过http方式发送的数据
- 【转载】Java数据接口编写简单例子,Java Json解析,服务端接口输出Json数据,客户端通过HTTP获取接口Json数据,作者:Jaiky_杰哥
- JAVA 获取http返回XML的数据
- Java中后台通过Post方式连接HTTPS获取返回的值
- 通过api使用HttpURLConnection 获取返回天气数据。
- java或者android通过http获取服务端数据
- C#中如何通过HTTP协议的不同请求方式获取数据
- Java模拟httpGet请求并获取返回的数据
- springMVC参数的传递方式(1.通过@PathVariabl获取路径参数,2.@ModelAttribute获取数据,3.HttpServletRequest取参,4@RequestParam)
- Java Json解析,Java Web Json解析,Java Web服务端获取Json数据,客户端通过HTTP获取Json数据