Http协议介绍

浏览器窗口输入网址再回车发生了几件事

'''
    1 浏览器朝服务端发送请求
    2 服务端接收请求(eg:请求百度首页)
    3 服务端返回相应的响应(eg:返回一个百度首页)
    4 浏览器接收响应,根据特定的规则渲染页面,展示给用户看
    
    浏览器可以充当很多服务端的客户端
        百度,腾讯视频,优酷视频...
    如何做到浏览器能够跟多个不同的服务端之间进行数据交互?
        1 浏览器很牛逼,能够自动识别不同服务端做不同处理
        2 制定一个统一的标准,如果你想要让你写的服务端能够跟客户端之间做正常的数据交互,那么你就必须要遵循一些规则
'''

HTTP协议

'''
    超文本传输协议,用来规定服务端和浏览器之间的数据交互的格式...
    改协议你可以部遵循,但是你写的服务端就不能被浏览器正常访问,你就自己跟自己玩
    你就自己写客户端,用户想使用,就下载你专门的app即可

    四大特性
        1.基于请求响应
        2.基于TCP/IP作用于应用层之上的协议
        3.无状态
            不保存用户的信息
                eg:一个人来个一千次,你都记不住,每次都当他如初见
            由于HTTP是无状态的,所以后续出现了一些专门记录用户状态的技术
                cookie/session/token...
        4.无/短链接
            请求来一次我响应一次,之后我们两个就没有任何链接和关系了
            
            长链接:双方建立链接之后默认不断开 websocket(后面会讲)
    请求数据格式
        请求首行(用来标识HTTP协议版本,当前请求方式)
        请求头(一大堆k,v键值对)
        空行(这里空白(/r/n)换行,千万不能省略)
        请求体(并不是所有的请求方法都有,get没有post有,存放的是post请求提交的敏感数据)
    响应数据格式
        响应首行(用来标识HTTP协议版本,响应状态码)
        响应头(一大堆k,v键值对)
        空行(这里空白(/r/n)换行,千万不能省略)
        响应体(返回给浏览器展示给用户看的数据)    
    请求方式
        1.get请求
            向服务端要数据
                eg:输入网址获取对应的内容
        2.post请求
            向服务端提交数据
                eg:用户登录,输入用户名和密码之后,提交到后端做身份校验
    响应状态码
        用一串简单的数字来表示一些复杂的状态或者描述性信息
            1xx:服务端已经成功接收到了你的数据正在处理,你可以继续提交额外的数据
            2xx:服务端成功响应了你想要的数据(200 OK 请求成功)
            3xx:重定向(当你在访问一个需要登录之后才能看的页面,你会发现自动跳转到登录页面)
            4xx:请求错误
                404:请求资源不存在
                403:当前请求不合法或不符合访问资源的条件
            5xx:服务器内部错误(500 server internal error)
    URL
        统一资源定位符(大白话:网址)
'''

学习博客:https://www.cnblogs.com/haiyan123/p/8387770.html

上一篇:基础知识


下一篇:标题栏图标设置