InputStream is = request.getInputStream();
DataInputStream input = new DataInputStream(is);
String str =input.readUTF();
分离参数方法
public String splitString(String str,String temp){
String result = null;
if (str.indexOf(temp) != -1) {
if (str.substring(str.indexOf(temp)).indexOf("&") != -1) {
result = str.substring(str.indexOf(temp)).substring(str.substring(str.indexOf(temp)).indexOf("=")+1, str.substring(str.indexOf(temp)).indexOf("&"));
} else {
result = str.substring(str.indexOf(temp)).substring(str.substring(str.indexOf(temp)).indexOf("=")+1);
}
}
return result;
}
调用this.splitString(str, "id=")
对post和get传递参数分别获取
//获取post参数
StringBuffer sb = new StringBuffer() ;
InputStream is = request.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String s = "" ;
while((s=br.readLine())!=null){
sb.append(s) ;
}
String str =sb.toString();
//防止用get传递参数
if(str.equals("")){
if(request.getQueryString() != null) {
str = request.getRequestURL()+"?"+request.getQueryString();
} else {
str = request.getRequestURL().toString();
}
}
分享到:
相关推荐
在Java Web开发中,`HttpServletRequest`接口提供了一个方法`getInputStream()`,用于获取客户端发送请求时附带的数据,这些数据通常以二进制形式存在,比如上传文件或者POST请求中的非表单数据。然而,一个重要的...
`request.getInputStream()`读取请求体数据;`request.getRequestURI()`和`getRemoteAddr()`分别获取请求URI和客户端IP地址等。 理解Servlet生命周期以及如何从`HttpServletRequest`对象获取信息是开发Java Web应用...
本篇将详细讲解如何在Android中使用POST方式来获取数据,并结合源代码和JSON解析进行实例说明。 首先,POST请求常用于向服务器发送大量数据或者需要改变服务器状态的情况。在Android中,我们可以使用`...
为了在服务器端获取这些POST数据,我们可以使用以下方法: 1. **使用`Part`接口**:Java Servlet 3.0及以上版本提供了处理`multipart/form-data`的API。你可以通过`HttpServletRequest`的`getParts()`方法获取所有...
对于JSON或XML数据,GET请求通常用于从服务器获取这些数据,数据以字符串形式返回,可以通过解析库如Gson或Jackson处理JSON,或者使用`javax.xml.parsers.DocumentBuilderFactory`处理XML。 ### POST请求 POST请求...
httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); HttpResponse response = httpClient.execute(httpPost); ``` 三、Android与JavaWeb交互 在实际应用中,Android通常与后端JavaWeb服务进行数据交换...
使用`HttpURLConnection`,需要创建一个`RequestBody`实例来包装文件数据: ```java File file = new File("/path/to/file"); RequestBody requestBody = new MultipartBody.Builder() .setType(MultipartBody....
BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream())); StringBuilder jsonPayload = new StringBuilder(); String line; while ((line = reader.readLine()) != null...
param = request.POST.get('paramName') # 处理参数... ``` 对于Node.js的Express框架,我们可以使用`req.query`和`req.body`来访问GET和POST参数: ```javascript const express = require('express'); const ...
例如,在一个基于java的web应用中,我们可以使用上述方法来获取客户端提交的json数据,并将其解析为java对象,以便于后续的业务处理。 使用HttpServletRequest获取post请求body内容的方法是一种常见的技术,在实际...
GET主要用于获取资源,其参数通过URL直接传递,一般用于查询操作,数据量有限,通常不超过2KB。而POST方法则可以传输大量数据,它将数据封装在请求体中,常用于提交表单或者上传文件。 在Android中,我们可以使用...
request.setMethod(Request.Method.POST); request.addHeader("Content-Type", "application/x-www-form-urlencoded"); request.setRequestBody("key1=value1&key2=value2"); Response response = request.execute()...
- **ServletInputStream request.getInputStream()**: 包含整个请求的数据,包括文件数据和表单数据。 **(2)多部件表单的体** - 表单数据被分割成多个部件,每个部件代表一个表单元素。 - 每个部件包含了请求头和...
在Android开发中,POST和GET是两种主要的HTTP请求方法,用于从服务器获取数据或向服务器发送数据。本文将深入探讨这两种方法的工作原理、应用场景以及如何在Android中实现它们。 一、POST与GET方法的区别 1. 工作...
在Java中,我们可以使用`HttpURLConnection`或者第三方库如Apache HttpClient或Spring的RestTemplate来实现POST请求。以下是一个使用`HttpURLConnection`的POST请求示例: ```java import java.io.OutputStream; ...
在Java编程中,发送HTTP请求是常见的任务,无论是获取网页数据、调用API接口还是进行自动化测试,都可能需要这个功能。本篇文章将详细介绍如何使用Java实现POST和GET两种HTTP请求方法。 首先,GET请求是最基础的...
GET用于获取资源,而POST则用于向服务器发送数据,通常用于提交表单或创建新资源。 **1. Android HTTP GET请求** GET请求通常用于从服务器获取数据。在Android中,我们可以使用HttpURLConnection或者第三方库如...
2. **构建Request对象**:使用`new Request.Builder()`,添加URL,设置POST方法,并通过`post(RequestBody)`指定POST数据。 3. **发送请求并处理响应**:通过OkHttpClient的`newCall(Request)`方法创建Call对象,再...
你可以使用`request.getPart("filename")`来获取名为`filename`的`Part`对象,然后调用`Part`的`write()`方法将其写入到服务器上的文件系统。 ```java @WebServlet("/upload") public class UploadServlet extends ...
- `InputStream getInputStream()`:获取请求体的数据流,适用于POST请求时上传文件或发送JSON等数据。 三、实例程序 以下是一个简单的Servlet程序,演示了如何使用`HttpServletRequest`接口: ```java import ...