网络基础知识
网络基础知识
URL
- 名称:统一资源定位符
- 格式:协议://主机地址[:端口号]/资源路径
- 默认监听在80端口,默认端口号是可以省略的
- 示例:http://localhost/
- 常见的协议类型:http,https,ftp,ssh,ssl等
- 客户端:用户端,用户使用的程序,如B/S架构中的浏览器,C/S架构中的手机APP
- 服务器:对外提供web服务或app服务的服务器,解决资源与数据
- 请求:客户端向服务器索取数据的一种行为
- 响应:服务器对客户端的请求做出的反应,一般指返回数据给客户端。
HTML
- 名称:超文本标记语言
- 超文本:声音、视频、超链接等
HTTP
名称
超文本传输协议
作用
传输超文本
请求(request)
请求内容
- 请求行:请求方式,HTTP协议版本
- 请求头:浏览器及操作系统信息,支持的语言等
- 请求体:传输的参数
请求方式(GET 和 POST)
GET
参数信息会直接暴露在URL中,典型应用场景就是查询
POST
不会直接将参数信息暴露在URL中,它相对比较安全,典型应用场景:登录、注册等需要向服务器提交数据的情况
GET和POST的区别(面试题)
- 最直观的区别就是GET把参数包含在URL中,POST通过request body(请求体)传递参数。
- GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
- GET在浏览器回退时是无害的,而POST会再次提交请求。
- GET请求只能进行url编码,而POST支持多种编码方式。
- GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
- GET请求在URL中传送的参数是有长度限制的,而POST么有。
- 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
- GET参数通过URL传递,POST放在Request body中。
响应(response)
响应行
- 协议版本
- 状态码(重点)
- 200:请求成功
- 3XX:数据路径发生改变(重定向),302、304
- 4xx:客户端存在问题
- 404:页面找不到
- 403:权限不够
- 5XX:服务器端问题
响应头
- web服务器信息
- 项目信息
响应体
HTTPS
- 名称:HTTPS 中的 S 是 Secure 的意思,就是在 HTTP 基础上增加了数据加密,从而使得客户端和服务器之间传输的数据更加安全。