`
angel243fly
  • 浏览: 10777 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

HTTP PUT请求时,表单数据无法传递

阅读更多
Put请求一般可用来修改服务器中的资源,但如果你需要提交给服务器一些表单数据,那么遗憾的告诉你,PUT请求不支持,最简单的方法就是改用POST请求,我也是今天在项目中才知道的,特此记下,共同学习。
具体请看:
SRV.4.1.1 When Parameters Are Available

The following are the conditions that must be met before post form
data will be populated to the parameter set:

1. The request is an HTTP or HTTPS request.
2. The HTTP method is POST.
3. The content type is application/x-www-form-urlencoded.
4. The servlet has made an initial call of any of the getParameter
family of methods on the request object.

大概意思是:
以下条件是在post form数据在被移至参数集合之前必须满足的条件:

   1. request是HTTP/HTTPS request
   2. HTTP method是POST。
   3. content type是application/x-www-form-urlencoded。
   4. servlet已经对request对象中所有getParameter可以得到的参数做了初始化调用。
分享到:
评论

相关推荐

    https支持put get post请求

    同时,对于敏感数据的传输,建议使用POST请求,因为GET请求可能会将数据暴露在URL中,而PUT请求则通常用于更新资源,应确保客户端有足够的权限进行此类操作。 总之,HTTPS协议不仅提供安全的通信环境,还兼容HTTP的...

    post_get_put等请求方法的区别

    * PUT 请求方法包含请求体,用于传递数据到服务器端。 * PUT 请求方法不是幂等的,即多次请求可能会改变服务器端的状态。 * PUT 请求方法通常用于更新服务器端的资源。 DELETE 请求方法 DELETE 请求方法用于删除...

    模拟post、put、head、get、patch、link、lock等多种请求

    它将数据封装在请求正文中,通常用于表单提交或API调用中添加新数据。在描述中提到的"params(key,value)传值"就是POST请求常使用的参数传递方式。 2. **PUT**:PUT请求类似于POST,但主要用于更新已有资源。它...

    volley 通过表单提交数据

    为了提交表单数据,我们需要自定义一个请求类,继承自 `StringRequest` 并重写 `getParams()` 方法来封装表单数据: ```java public class FormRequest extends StringRequest { private Map, String> params; ...

    java代码发送JSON格式的httpPOST请求

    下面将详细解析如何利用`HttpURLConnection`来构建并发送一个包含JSON数据的POST请求: ```java import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io....

    Ajax发送PUT-DELETE请求时出现错误的原因及解决方案.docx

    当使用Ajax发送PUT或DELETE请求时,最常见的问题是服务器端无法正确地接收到客户端发送的数据。例如,在一个更新员工信息的例子中,前端使用jQuery的`$.ajax()`方法发送PUT请求: ```javascript $.ajax({ url: "${...

    http请求 网络请求 从网路读数据

    4. 请求体(Body):仅在POST、PUT等请求方法中存在,用于传递附加数据。 HTTP请求主要有以下几种类型: - GET:请求指定资源,通常用于获取信息。 - POST:向指定资源提交数据,例如提交表单或上传文件。 - PUT:...

    http两种请求方式post和get请求的区别

    当需要提交表单、创建新资源或更新已有资源时,POST 请求是首选。 2. 数据量: - GET 请求:受到 URL 长度限制,一般不超过 2048 个字符,因此不适合传输大量数据。 - POST 请求:没有长度限制,可以在请求体中...

    jQuery+json异步实现JSP和struts2之间的数据传递

    在异步数据传输中,jQuery的`$.ajax()`方法是关键,它可以发送异步HTTP请求,获取或提交数据。通过设置`dataType: 'json'`,我们可以指定数据类型为JSON,使得服务器返回的数据能被自动解析成JavaScript对象。 JSON...

    Android Studio发起POST网络请求

    POST请求需要传递参数,通常以键值对的形式,可以使用`FormBody.Builder`或`MultipartBody.Builder`。假设我们有JSON格式的数据: ```java JSONObject jsonObject = new JSONObject(); jsonObject.put("key1", ...

    c# rest http请求类库

    2. **参数传递**:RestSharp支持多种参数类型,如查询字符串参数、路径参数、表单数据、文件上传等。你可以通过`AddQueryParameter`、`AddPathParameter`等方法添加参数。 ```csharp request.AddParameter("key", ...

    http、restTemplate请求资源(含带头部信息)

    2. POST请求:POST请求常用于向服务器提交数据,比如表单提交。数据包含在请求体中,对用户不可见。POST请求不保证幂等性,可能因多次执行导致不同的结果。 接下来,我们将讨论如何使用`RestTemplate`发送带有头部...

    php中的http请求工具

    2. **发起POST请求**:除了GET,`HttpTool`也支持POST请求,允许开发者传递参数,如JSON、表单数据等。 3. **设置请求头**:开发者可以通过工具类设置自定义的HTTP头,例如Content-Type、Authorization等。 4. **...

    iOS数据请求封装

    - 请求头用于传递额外的信息,如Content-Type(指定请求体的数据类型)和Authorization(用于身份验证)等。 5. **响应头(Response Headers)**: - 响应头包含了服务器返回的元数据,如Content-Length(响应体...

    HTTP连接请求.e.rar

    4. **请求体**:在POST或PUT请求中,请求体通常用来传递数据,例如表单提交的数据或者JSON对象。 5. **HTTP连接管理**:HTTP/1.0默认为短连接,即每次请求后关闭连接,而HTTP/1.1引入了持久连接,允许多次请求在...

    JAVA实现HTTP传输实例

    - POST请求:用于提交数据,通常用于表单提交。设置setDoOutput(true),然后使用OutputStream写入数据。 3. **设置请求头**:HttpURLConnection提供了setRequestProperty()和addRequestProperty()方法来设置请求头...

    02HTTP请求头响应头详解1

    - POST:用于向服务器提交数据,数据在请求体中,适用于表单提交,可以传输大量数据。 3. 请求头: 请求头包含了客户端的一些附加信息,如User-Agent(用户代理)、Accept(可接受的内容类型)、Host(请求的...

    java后台请求http并保持Session

    在Java编程中,后台请求HTTP并保持Session是一个常见的任务,特别是在需要访问受保护的Web资源时,例如登录后的网页数据。下面将详细讲解这个过程,包括GET和POST方法的使用,以及Session管理。 首先,我们需要了解...

    Http协议内容总结 http协议包含哪些内容 Http协议的请求方法 Http协议实现的原理机制 get与post请求的区别

    1. **数据传输方式**:GET请求通过URL传递参数,而POST则通过请求体传递数据。 2. **数据大小限制**:GET请求由于依赖URL,因此受到URL长度的限制,通常小于2KB;而POST请求没有此限制,适合传输大量数据。 3. **...

    android http (get, post, put)封装

    这里的`sendGetRequest`、`sendPostRequest`和`sendPutRequest`方法分别封装了GET、POST和PUT请求。`RequestBody.create`用于创建请求体,`MediaType.parse`指定数据类型。 3. 在实际使用时,调用这些方法即可: ``...

Global site tag (gtag.js) - Google Analytics