HTTP请求报文
HTTP 请求报文主要由请求行,请求头部,请求正文3部分组成
请求方法包括GET,HEAD,PUT,POST,TRACE,OPTIONS,DELETE以及扩展方法
GET请求:
GET请求在URL末尾加上查询字符串向服务器传递参数。
查询字符串(URL参数)是指在URL的末尾加上用于向服务器发送信息的字符串(变量)。以?分割URL和查询字符串,参数之间使用“&”相连。
GET请求没有请求体
一个URL地址所具有的属性
href:设置或返回完整的url。
host:设置或返回主机名和当前的URL的端口号。
hostname:设置或返回当前URL的主机名。
hash:设置或返回从井号(#)开始的URL(锚)。
pathname:设置或返回当前URL的路径部分。
port:设置或返回当前URL的端口号。
protocol:设置或返回当前URL的协议。
search:设置查询字符串。
POST请求
POST 提交的数据放在消息主体(entity-body)中。
服务端根据请求头中的 Content-Type 字段来获知请求中的消息主体是用何种方式编码,再对主体进行解析。
POST请求提交数据的Content-Type主要有以下几种:
application/x-www-form-urlencoded、multipart/form-data、raw。
(1)application/x-www-form-urlencoded
最常见的提交数据的编码方式, 表单,如果不设置 enctype 属性,那么最终就会以 application/x-www-form-urlencoded 方式提交数据,参数的格式为key=value&key=value。
(2)multipart/form-data
上传文件的编码方式,上传文件时,需要让 表单的 enctype 等于 multipart/form-data。
(3)raw
raw的编码方式主要有application/json、text/xml等
application/json
以application/json 作为Content-type,告诉服务端消息主体是序列化后的 JSON 字符串。