head请求是http1.0约定的三种请求方式之一,与get请求相似,但是响应报文中没有响应体,只有响应头。
我们可以通过响应头中的content-length、last-modifed、etag来判断资源实体是否发生了变化。
options请求是http1.1新增的请求方式,用于查询服务端性能,比如查询服务端支持的请求方式、查询服务端是否支持跨域等。 常见于客户端发送非简单请求和跨域请求之前的预检。
满足以下条件之一即为非简单请求:
http是不断发展的,新增的请求方式和字段不一定被老的服务器系统所支持,因此需要先发送预检请求去询问一下服务端是否支持这种请求。
在进行跨域时,get请求只需要发送一次请求,而post则需要发送两次。
post请求之前会先发送一个options请求,请求头中包含origin字段,标识客户端所在的域,这次请求并不发送请求体。
服务端在收到options请求后,会查看请求头中origin标识的域是否在自己Access-Control-Allow-Origin配置的域中,如果在的话则表示允许跨域,并向客户端返回状态码100 Continue。
之后,客户端发送post请求,将请求体传到服务端。