浅析HTTP

95 阅读1分钟

HTTP 超级文本传输协议

请求

  • 请求动词 路径加查询参数 协议名/版本
  • Host:域名或IP
  • Accept:text/html
  • Content-Type:请求体的格式
  • 回车
  • 请求体(也就是上传内容)

细节

  • 三部分:请求行,请求头,请求体
  • 请求动词有GET/POST/PUT/PATCH/DELETE等
  • 请求体在GET请求中一般为空
  • 文档位于RFC 2612第五章

相应

  • 协议名/版本 状态码 状态字符串
  • Content-Type:响应体的格式
  • 回车
  • 响应体(也就是下载内容)

细节

  • 三部分:状态行,响应头,响应体
  • 常见的状态吗是考点

用curl构造请求\

curl -v http://127.0.0.1:8888
●设置请求动词
○-X POST
○注意大小写
●设置路径和查询参数
○直接在url后面加
●设置请求头
○-H ‘Name:Value’ 或者 --header 'Name:Value'
●设置请求体
○-d ' 内容' 或者 --data '内容'\

用Node.js读取请求\

●读取请求动词
○request.method
●读取路径
○request.url,带查询参数
○path纯路径,不带查询参数
○query只有查询参数
●读取请求头
○request.headers['accept']\

用Node.js设置响应\

●设置响应状态码
○response.statusCode = 200
●设置响应头
○response.setHeader('Content-Type','text/html')
●设置响应体
○response.write('内容)
○可追加内容\