http之post方法 提交数据的四种方法

http协议中,post方法用来向服务端提交数据, 这里介绍四种方式:

  1. application/x-www-form-urlencoded

  2. multipart/form-data

  3. application/json

  4. text/xml

由于是在http协议下工作,这里先看下http协议的样子。

http协议的特点

  1. 建议在TCP/IP之上的应用层,用ASCII码传输;
  2. http请求分为三部分,请求请求行,消息头,消息体,其中消息头和消息体用(CR/LF)空行隔开:
<method> <request-URL> <version>
<headers>

<entity-body>

协议规定post提交数据需要放在消息体中,但并没有限定编码方式。服务器可以通过消息头中的Content-Type属性来获知消息体中

数据的编码方式,文章一开始说的四种方式,其实就是四种Content-Type。

一、Content-Type:application/x-www-form-urlencoded

最常见的方式,例子如下:

POST http://www.example.com HTTP/1.1
Content-Type: application/x-www-form-urlencoded;charset=utf-8

title=test&sub%5B%5D=1&sub%5B%5D=2&sub%5B%5D=3

未完待续 。。

主要参考文章:

【1】四种常见的 POST 提交数据方式 专题 by 沧海一滴

时间: 2024-10-01 07:40:41

http之post方法 提交数据的四种方法的相关文章

asp.net.mvc 中form表单提交控制器的2种方法和控制器接收页面提交数据的4种方法

MVC中表单form是怎样提交? 控制器Controller是怎样接收的? 1..cshtml 页面form提交 (1)普通方式的的提交 (2)特殊方式提交 2.控制器处理表单数据的四种方法 方法1:使用传统的Request请求数据 方法2:Action参数名与表单元素name值一一对应 方法3:从MVC封装的FormCollection容器中读取 方法4:使用实体作为Action参数传入,前提是提交的表单元素名称与实体属性名称一一对应 控制器源码 using MvcStudy.Models;u

POST提交数据的四种方式

四种常见的 POST 提交数据方式 HTTP/1.1 协议规定的 HTTP 请求方法有 OPTIONS.GET.HEAD.POST.PUT.DELETE.TRACE.CONNECT 这几种.其中 POST 一般用来向服务端提交数据,本文主要讨论 POST 提交数据的几种方式. 我们知道,HTTP 协议是以 ASCII 码传输,建立在 TCP/IP 协议之上的应用层规范.规范把 HTTP 请求分为三个部分:请求首行(状态行).请求头.请求体(消息主体).类似于下面这样: <method> <

向服务器提交数据的几种方法

界面代码: activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_

在Activity间传递数据的四种方法及返回结果

1.通用方法 使用intent的PutExtra方法传入,用getExtra等方法获得数据 主类 Intent intent=new Intent(MainActivity.this,OtherActivity.class); intent.putExtra("name", "张三"); intent.putExtra("age", 23); intent.putExtra("address", "北京")

html向后端提交数据的几种方法

(未写完) 一 . 刷新页面 1. form表单提交 GET/POST 二. 局部刷新(不刷新页面) 1. Ajax 状态码: 0 - (未初始化)还没有调用send()方法 1 - (载入)已调用send()方法,正在发送请求 2 - (载入完成)send()方法执行完成 3 - (交互)正在解析响应内容 4 - (完成)响应内容解析完成,可以在客户端调用了 注:有一些便捷的方法可以不用完整的写ajax请求,例如AjaxForm请求 2. iframe+js(伪造Ajax请求) 其实是在页面开

mysqlbinlog 恢复数据的四种方法

mysqlbinlog 命令 作用:mysqlbinlog 是用来解析mysql的binlog日志的. [[email protected] data]# file mysql-bin.000001 mysql-bin.000001: MySQL replication log [[email protected] data]# mysqlbinlog日志无法直接用cat 查看,需要用mysqlbinlog命令转换为普通文件才能查看 也只有用mysqlbinlog命令把binlog日志转化为普通

Android提交数据到服务器的两种方式四种方法

Android应用开发中,会经常要提交数据到服务器和从服务器得到数据,本文主要是给出了利用http协议采用HttpClient方式向服务器提交数据的方法. /** * @author Dylan * 本类封装了Android中向web服务器提交数据的两种方式四种方法 */ public class SubmitDataByHttpClientAndOrdinaryWay { /** * 使用get请求以普通方式提交数据 * @param map 传递进来的数据,以map的形式进行了封装 * @p

Node.JS的表单提交及OnceIO中接受GET/POST数据的三种方法

OnceIO 是 OnceDoc 企业私有内容(文档)管理系统的底层Web框架,它可以实现模板文件.静态文件的全缓存,运行起来完全不需要I/O操作,并且支持客户端缓存优化,GZIP压缩等(只压缩一次),拥有非常好的性能,为您节约服务器成本.它的模块化功能,可以让你的Web进行分布式存储,在一个扩展包里即可包含前端.后端和数据库定义,只需通过添加/删除目录的方式就可实现功能删减,实现真正的模块化扩展.目前 OnceIO 已经开源,本文主要介绍node.js语言中的表单提交及OnceIO中接受GET

IOS开发之——四种方法解析Jason数据(转)

本文将介绍TouchJson. SBJson .JSONKit 和 iOS5所支持的原生的json方法,解析国家气象局API,TouchJson和SBJson需要下载他们的库 TouchJson包下载: http://download.csdn.net/detail/enuola/4523169 SBJson 包下载: http://download.csdn.net/detail/enuola/4523177 JSONKit包下载:http://download.csdn.net/detail