JAVA HttpURLConnection Post方式提交传递参数

客户端:

private static String _doPost(String url, String ctype, byte[] content, int connectTimeout, int readTimeout,

Map<String, String> headerMap) throws IOException {

HttpURLConnection conn = null;

OutputStream out = null;

String rsp = null;

try {

try {

conn = getConnection(new URL(url), METHOD_POST, ctype, headerMap);

conn.setConnectTimeout(connectTimeout);

conn.setReadTimeout(readTimeout);

} catch (IOException e) {

Map<String, String> map = getParamsFromUrl(url);

//TaobaoLogger.logCommError(e, url, map.get("app_key"), map.get("method"), content);

throw e;

}

try {

out = conn.getOutputStream();

                                  //name=ligang&age=18  这种格式数据value先进行UrlEncode 再转byte字节流

out.write(content);

rsp = getResponseAsString(conn);

} catch (IOException e) {

Map<String, String> map = getParamsFromUrl(url);

//TaobaoLogger.logCommError(e, conn, map.get("app_key"), map.get("method"), content);

throw e;

}

} finally {

if (out != null) {

out.close();

}

if (conn != null) {

conn.disconnect();

}

}

return rsp;

}

服务端接受
        1、String name = request.getParameter("name");

        2、request.getInputStream() 对输入流进行解析
        注意:两种方式不可混用,用了一个,另一种方法将会取不到值,具体解答参考源码
org.apache.catalina.core.ApplicationHttpRequest.

猜你喜欢

转载自jxjjhz.iteye.com/blog/2009082