Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4113236
  • 博文数量: 626
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 11080
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-23 13:08
文章分类

全部博文(626)

文章存档

2015年(72)

2014年(48)

2013年(506)

分类: Java

2013-10-11 09:32:42

用Java写数据到POST请求

HTTP POST请求最常见的用途是发送表单参数到服务器。除了发送表单数据,还可以使用POST的消息Body体发送各种数据(如纯文本、XML文档等)。本文讲述如何用Java将数据写入POST请求的Body体。


  1. import java.io.IOException;  
  2. import java.io.InputStream;  
  3. import java.io.OutputStreamWriter;  
  4. import java.net.URL;  
  5. import java.net.URLConnection;  
  6. import java.util.logging.Level;  
  7. import java.util.logging.Logger;  
  8. import org.apache.commons.io.IOUtils;  
  9.   
  10. public class RequestTest {  
  11.     public static void main(String[] args){  
  12.         try{  
  13.             // Configure and open a connection to the site you will send the request  
  14.             URL url = new URL("");  
  15.             URLConnection urlConnection = url.openConnection();  
  16.             // 设置doOutput属性为true表示将使用此urlConnection写入数据  
  17.             urlConnection.setDoOutput(true);  
  18.             // 定义待写入数据的内容类型,我们设置为application/x-www-form-urlencoded类型  
  19.             urlConnection.setRequestProperty("content-type""application/x-www-form-urlencoded");  
  20.             // 得到请求的输出流对象  
  21.             OutputStreamWriter out = new OutputStreamWriter(urlConnection.getOutputStream());  
  22.             // 把数据写入请求的Body  
  23.             out.write("message = Hello World chszs");  
  24.             out.flush();  
  25.             out.close();  
  26.               
  27.             // 从服务器读取响应  
  28.             InputStream inputStream = urlConnection.getInputStream();  
  29.             String encoding = urlConnection.getContentEncoding();  
  30.             String body = IOUtils.toString(inputStream, encoding);  
  31.             System.out.println(body);  
  32.         }catch(IOException e){  
  33.             Logger.getLogger(RequestTest.class.getName()).log(Level.SEVERE, null, e);  
  34.         }  
  35.     }  
  36. }  

是不是很简单?



阅读(1872) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

syj3451295642014-04-01 10:36:10

但是会超时,如果是在线上会报404错误和502