HTTP状态码:100 Continue
客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。
1、http100-continue用于客户端在发送POST数据给服务器前,征询服务器情况,看服务器是否处理POST的数据,如果不处理,客户端则不上传POST数据,如果处理,则POST上传数据。在现实应用中,通过在POST大数据时,才会使用100-continue协议。
2、客户端策略
①如果客户端有POST数据要上传,可以考虑使用100-continue协议。加入头{"Expect":"100-continue"}
②如果没有POST数据,不能使用100-continue协议,因为这会让服务端造成误解。
③并不是所有的Server都会正确实现100-continue协议,如果Client发送Expect:100-continue消息后,在timeout时间内无响应,Client需要立马上传POST数据。
④有些Server会错误实现100-continue协议,在不需要此协议时返回100,此时客户端应该忽略。
3、服务端策略
①正确情况下,收到请求后,返回100或错误码。
②如果在发送100-continue前收到了POST数据(客户端提前发送POST数据),则不发送100响应码(略去)。