android httpurlconnection 参数,android – 如何使用POST向HttpURLConnection添加参数

您可以获取连接的输出流,并将参数查询字符串写入它。

URL url = new URL("http://yoururl.com");

HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();

conn.setReadTimeout(10000);

conn.setConnectTimeout(15000);

conn.setRequestMethod("POST");

conn.setDoInput(true);

conn.setDoOutput(true);

List params = new ArrayList();

params.add(new BasicNameValuePair("firstParam", paramValue1));

params.add(new BasicNameValuePair("secondParam", paramValue2));

params.add(new BasicNameValuePair("thirdParam", paramValue3));

OutputStream os = conn.getOutputStream();

BufferedWriter writer = new BufferedWriter(

new OutputStreamWriter(os, "UTF-8"));

writer.write(getQuery(params));

writer.flush();

writer.close();

os.close();

conn.connect();

… …

private String getQuery(List params) throws UnsupportedEncodingException

{

StringBuilder result = new StringBuilder();

boolean first = true;

for (NameValuePair pair : params)

{

if (first)

first = false;

else

result.append("&");

result.append(URLEncoder.encode(pair.getName(), "UTF-8"));

result.append("=");

result.append(URLEncoder.encode(pair.getValue(), "UTF-8"));

}

return result.toString();

}