HTTP协议
1.1 HTTP1.0
1.2 HTTP1.1
1.2.1 三大特性
- 持久连接
- 块编码
- 状态码100的使用
持久连接:
connection:keep-alive
块编码:发送方必须告诉接收方必须在不知道发送内容长度的情况下如何解析
transfer-encoding的特殊请求头,指明字节流块发送
1D\r\n
I`m as helpless as a kitten u
9\r\n
p a tree.
0\r\n 表示一个事物的结束
状态码100的使用
//HttpProcessor中process()片段
private static final byte[] ack =
(new String("HTTP/1.1 100 Continue\r\n\r\n")).getBytes();
if (http11) {
// Sending a request acknowledge back to the client if
// requested.
ackRequest(output);
// If the protocol is HTTP/1.1, chunking is allowed.
if (connector.isChunkingAllowed())
response.setAllowChunking(true);
}
private void ackRequest(OutputStream output)
throws IOException {
if (sendAck)
output.write(ack);
}