JSON
一、是什么。
json全称是JavaScript Object Notion,是一种轻量级的数据交换格式。
二、常用格式。
对象:一个无序的键值对集合,用花括号包裹,键值对中间用冒号分隔,由一个键和一个值组成,键必须是字符串,键值对中间用逗号分隔。
{
“name":"Tom",
"age":18,
"gender":"man"
}
数组:一个有序值集合,用方括号“[]”包裹,值间用逗号分隔。
["apple","banana","starwberry"]
三、值的类型。
字符串,使用双引号包裹,可包含转义字符。
布尔值,表示true或false。
数值,可以是整数和浮点数。
空值NULL。
三、应用。
Web开发:用于前后端数据交换,尤其是AJAX请求中用于异步加载数据,实现局部刷新无需请求整个页面。
API设计:RESTfulAPI通常用JSON做数据交换格式,结构简单,易于解析,非常适合用作网络传输。
对象序列化、Token生成等。
AJAX
一、是什么。
无需重新加载整个网页,即可实现部分网页内容更新的技术。是一种用于快速网页创建的技术。
二、原理。
当出现按钮点击或者页面刷新等事件触发时,AJAX通过SMLHttpRequest对象,向服务器发送请求,服务器接收并处理请求,返回响应数据(如XML、JSON格式)。浏览器接收响应,使用JavaScript在页面更新内容。
AXIOS
一、是什么。
网络请求库可用于浏览器和基于node.js的后端,是专注于网络请求的库。
二、原理。
本质是对XMLHttpRequest做了封装。
三、特点。
简洁易用:提供统一API,简化异步请求书写。
拦截器:可拦截请求和响应,统一数据格式和错误。
自动转换:默认将请求转换为SJON格式,将响应转换器为JavaScript格式。
支持:支持所有HTTP方法。
HTTP协议
一、是什么。
超文本传输协议,是互联网上应用最广泛的协议之一。用于在服务端和浏览器端传输超文本。
二、原理。
通过请求-相应的方式传输数据,由浏览器向服务端发出请求,在请求头中携带需要请求的数据要求,服务端进行解析后对前端请求的内容处理并进行响应。
三、结构
请求结构:请求行:包括请求方法、请求资源和协议版本。
请求头:附加信息。
请求体:可选用于传输数据。
响应结构:
状态行:返回请求的状态码和状态消息。
响应头:包括附加信息(如Content-Type)。
四、HTTP关键特性。
无状态性,服务端发出的每次请求都是独立的,客户端不会保存任何请求信息,无法辨认请求是否来自同一客户端。
不安全,可以通过HTTPS加密通信保护数据。
三层架构
一、是什么。
三层架构就是通过处理内容的逻辑不同将传统的整体拆分成表现层、业务逻辑层、数据逻辑层,目的是为了解耦,使项目代码更易于修改和维护。
二、优缺点。
优点:可维护可拓展性高。
降低层与层之间的依赖。
有利于逻辑复用和标准化。
缺点:
降低系统性能,访问数据库必须通过中间层。
会导致级联修改,如果要在业务中增加功能,要在对应的业务逻辑层和数据访问层都要做相应的增加。
增加开发成本。
