HTTP协议报文结构
HTTP 协议是应用层协议,HTTP协议报文分为请求报文和响应报文两种类型,两者都包含三部分:首行、头部、主体。
HTTP 请求报文
请求行:GET / HTTP/1.1
表示请求的方法(请求类型)、路径、协议版本
请求头:Connection: keep-alive
请求体:GET的请求体为空
HTTP 响应报文
响应行:HTTP/1.1 200
响应头:content-type: text/html; charset=utf-8
响应体:主体内容
Socket实现HTTP协议:
package it.yus.socket;
import java.net.InetSocketAddress;
import java.nio.ByteBuffer;
import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
import java.nio.channels.ServerSocketChannel;
import java.nio.channels.SocketChannel;
import java.nio.charset.Charset;
import java.util.Iterator;
import java.util.concurrent.Executor;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.ThreadPo