httpclient网页提交参数如何使用

 我来答
匿名用户
2014-01-17
展开全部
        // HttpPost连接对象  
        HttpPost httpRequset = new HttpPost("http://192.168.0.100:8080/demo/");  
        // 使用NameValuePair来保存要传递的Post参数  
        List<NameValuePair> params = new ArrayList<NameValuePair>();  
        // 添加要传递的参数  
        params.add(new BasicNameValuePair("name", "jack"));  
        try {  
            // 设置字符集  
            HttpEntity httpentity = new UrlEncodedFormEntity(params, "gb2312");  
            // 请求httpRequset  
            httpRequset.setEntity(httpentity);  
            // 取得HttpClient  
            HttpClient httpClient = new DefaultHttpClient();  
            // 取得HttpResponse  
            HttpResponse httpResponse = httpClient.execute(httpRequset);  
            if(httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {  
                String strResult = EntityUtils.toString(httpResponse  
                        .getEntity());  
                System.out.println(strResult);  
            }else {  
                System.out.println("请求错误");  
            }  
        }  
        catch(Exception e) {  
            e.printStackTrace();  
        }
比克搜寻者
推荐于2016-10-14 · TA获得超过175个赞
知道小有建树答主
回答量:225
采纳率:0%
帮助的人:42.1万
展开全部
这就是HttpClient发送数据代码
1. 首先,发送的时候

HttpClient client = new HttpClient();
PostMethod method = new PostMethod(URL);//具体method里面还可以设置一下编码,header之类的
//1. 第一种方式,基于Content-Type=‘multipart/form-data’形式的表单
Part[] parts = ...;//FilePart和StringPart都可以放进去
method.setRequestEntity(new MultipartRequestEntity(parts, method.getParams()));
//2. 第二种方式,普通表单
NameValuePair[] pairs = ...;//纯参数了,键值对
method.addParameters(pairs);

client.executeMethod(method);

当然了,还可能有其他的一些形式,这里不过多的说明了,有API可以参考
2. 接收的时候

private void parseRequest(HttpServletRequest request) throws Exception {
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if (isMultipart) {
DiskFileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
List items = upload.parseRequest(request);
for (int i = 0; i < items.size(); i++) {
FileItem item = (FileItem) items.get(i);
if (!item.isFormField()) {
//文件数据
} else {
//普通表单数据
}
}
} else {
Enumeration en = request.getParameterNames();
while (en.hasMoreElements()) {
String paramName = (String) en.nextElement();
String paramValue = request.getParameter(paramName);
}
}
}

如上便是我之前写的代码了,接收表单数据,没什么问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式