一尘不染

Java-通过POST方法发送HTTP参数?

java post

Java-通过POST方法发送HTTP参数?


阅读 543

收藏
2020-01-10

共1个答案

一尘不染

在GET请求中,参数作为URL的一部分发送。

在POST请求中,将参数作为请求的正文发送到标头之后。

要使用HttpURLConnection进行POST,你需要在打开连接后将参数写入连接。

这段代码可以帮助你入门:

String urlParameters  = "param1=a&param2=b&param3=c";
byte[] postData       = urlParameters.getBytes( StandardCharsets.UTF_8 );
int    postDataLength = postData.length;
String request        = "http://example.com/index.php";
URL    url            = new URL( request );
HttpURLConnection conn= (HttpURLConnection) url.openConnection();           
conn.setDoOutput( true );
conn.setInstanceFollowRedirects( false );
conn.setRequestMethod( "POST" );
conn.setRequestProperty( "Content-Type", "application/x-www-form-urlencoded");
conn.setRequestProperty( "charset", "utf-8");
conn.setRequestProperty( "Content-Length", Integer.toString( postDataLength ));
conn.setUseCaches( false );
try( DataOutputStream wr = new DataOutputStream( conn.getOutputStream())) {
   wr.write( postData );
}
2020-01-10