#HTTP# http全面解析

http的发展历史

  • http是什什么? http://www.xxx.com
    • http协议(HyperText Transfer Protocol,超文本传输协议)是一种应用广泛的网络传输协议。
    • http是一个基于TCP/IP通讯协议来传递数据(HTML文件,图片文件,查询结果等)。
  • http工作原理理
    • http协议工作在客户端-服务端之间
    • 主流的三个web服务器器:Apache、 Nginx 、IIS
    • http默认端口为80
    • http协议通信流程
      在这里插入图片描述
  • 输入url发生了了什什么?
    • DNS解析
    • TCP连接
    • 发送http请求
    • 服务器器处理理请求
    • 浏览器器解析渲染页面
    • 连接结束

http之请求方法和响应头信息

  • http请求方法
    • GET 请求指定的页面信息,并返回实体主体
    • HEAD 类似于get请求,只不不过返回的响应中没有具体的内容,⽤用于获取报头
    • POST 向指定资源提交数据进行处理请求。数据被包含在请求体中
    • PUT 从客户端向服务器器传送的数据取代指定的文档的内容
    • DELETE 请求服务器器删除指定的页面
    • CONNECT HTTP/1.1协议中预留留给能够将连接改为管道方式的代理理服务器器。
    • OPTIONS 允许客户端查看服务器的性能
    • TRACE 回显服务器收到的请求,主要用于测试或诊断
  • HTTP响应头信息
    在这里插入图片描述

http之状态码和content-type

  • 常见的http状态码
    • 200 请求成功
    • 301 资源被永久转移到其他URL
    • 404 请求的资源(网页等)不存在
    • 500 内部服务器错误
  • http状态码分为5类
    在这里插入图片描述
  • Content-Type 内容类型
    • 常见的媒体格式类型如下
      • text/html:HTML格式
      • text/plain:纯文本格式
      • text/xml:XML格式
      • image/gif:gif图片格式
      • image/jpeg:jpg图片格式
      • image/png:png图片格式
      • multipart/form-data:需要在表单中进行文件上传时,就需要使用该格式
    • 以application开头的媒体格式类型:
      • application/xhtml+xml:XHTML格式
      • application/xml:XML数据格式
      • application/atom+xml:Atom XML聚合格式
      • application/json:JSON数据格式
      • application/pdf:pdf格式
      • application/msword:Word文档格式
      • application/octet-stream:二进制流数据(常见的文件下载)
      • application/x-www-form-urlencoded:表单中默认的encType,表单数据被编码为key/value格式发送到服务器器

尝试使用NodeJS搭建自己的第一个http服务器

  • 引入http模块
const http = require('http')
  • 创建http服务器器
const http = require('http');
const server = http.createServer((req,res)=>{
res.writeHead(200,{'content-type':'text/html'});
res.end('<h1>hello world</h1>');
})
server.listen(3000,()=>{
console.log('监听了了3000端⼝口')
})

在这里插入图片描述

发布了59 篇原创文章 · 获赞 4 · 访问量 5129
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章