Ajax、url编码、JSON序列化等等

  1. 客户端与服务器
    服务器:存放和对外提供资源的高性能电脑。
    客户端:负责获取和消费资源的电脑。

  2. Url 地址
    UniformResourceLocator(统一资源定位符),用于标识互联网上每个资源的唯一存放位置,浏览器只能通过url地址,正确定位资源的存放位置,从而成功访问到对应的资源。

  3. Url地址的组成部分

    1. 通信协议:客户端与服务器之间的通信协议
    2. 服务器名称:存有该资源的服务器名称
    3. 资源路径:资源在服务器上具体的存放地址
      在这里插入图片描述
  4. 客户端与服务器的通信过程
    1.输入访问网站地址,向服务器发起资源请求
    2.服务器接受客户端的资源请求,
    3.处理请求,找到相关资源
    4.找到资源,响应(发送)给客户端

  5. 网页中如何请求数据

    1. 请求-处理-响应 的方式获取服务器资源
    2. XMLHttpRequest对象:请求服务器上的数据资源
  6. 资源的请求方式
    客户端请求服务器时,请求方式 get 和 post 请求
    get 请求通常用于获取服务器资源(向服务器要资源)
    post 请求通常用于向服务器提交数据(往服务器发送资源-数据提交操作)

  7. 什么是ajax
    Ajax的全称是 asyncchronous Javascript And XML (异步JavaScript和XML) 在网页中利用XMLHttpRequest对象和服务器进行数据交互的方式,就是Ajax

  8. 什么是XMLHttpRequest的基本使用
    请求服务器上的数据资源

  9. 使用xhr发起Get请求

创建 xhr 对象
调用 xhr.open() 函数 指定 请求方式 与 URL地址;
调用 xhr.send() 函数 发起请求
监听 xhr.onreadystatechange 事件 (监听 xhr 对象的请求状态 readyState;与服务器响应的状态 status
  1. 使用xhr发起post请求
	1. 创建 xhr 对象
	2. 调用 open()
	3. 设置 Content-Type 属性(固定写法) 
	4. 调用 send(),同时将数据以查询字符串的形式,提交给服务器 
	5. 监听 onreadystatechange 事件
  1. xhr对象的readyState属性,用来表示当前ajax请求所处的状态
0 unsent xmlHttpRequest对象已被创建,但尚未调用open方法
1 opened open()方法已经被调用
2 headers_received send()方法已经被调用,响应头也已经被接收
3 loading 数据接受中,此时response属性中已经包含部分数据
4 done  ajax请求完成,数据传输已经彻底完成或失败
  1. 认识XMLHttpRequest Level2的新特性
	旧版XMLHttpRequest的缺点:
		- 只支持文本数据的传输,无法用来读取和上传文件
		- 传送和接收数据时,没有进度信息,只能提示有没有完成

	XMLHttpRequest Level2的新特性:
		1.可以设置HTTP请求的限制时间
			xhr.timeout  设置期限  
			xhr.ontimeout 函数回调
		2.可以使用formData对象管理表单数据
			let formData = new FormData()
			formData.append("key",value)
		3.可以上传文件
			文件files,向formData中追加文件files
		4.可以获取数据传输的进度信息
			onreadyStatechange 事件监听上传进度
			通过监听 xhr.upload.onprogress 事件,来获取到文件的上传进度
  1. URL编码与解码
    url编码的原则:使用安全的字符(没有特殊用途或者特殊意义的可打印字符)去表示那些不安全的字符,url编码原则的通俗理解:使用英文字符去表示非英文字符。

  2. 如何对URL 进行编码与解码
    浏览器提供了URL编码与解码的api,分别是:
    encodeURL() 编码的函数
    decodeURL() 解码的函数
    详情请看:https://blog.csdn.net/Lxd_0111/article/details/78028889

  3. 查询字符串
    查询字符串(URL 参数)是指在 URL 的末尾加上用于向服务器发送信息的字符串(变量)。
    将英文的 ? 放在URL 的末尾,然后再加上 参数=值 ,想加上多个参数的话,使用 & 符号进行分隔

get请求本质上,都是直接将参数以查询字符串的形式,追加到 URL 地址的后面,发送到服务器的。

  1. 数据交换格式
    服务器端与客户端之间进行数据传输与交换的格式
    两种数据格式交换 XML和JSON;

  2. 什么是XML
    XML的英文全称是 EXtensible Markup Language,即可扩展标记语言。xml和html类似也是一种标记语言

  3. XML和HTML的区别
    HTML被设计用来描述网页上的内容,是网页内容的载体
    XML 被设计用来传输和存储数据,是数据的载体
    缺点: xml格式臃肿,和数据无关的代码多,体积大,传输效率低
    在JavaScript中解析XML比较麻烦

  4. 什么是JSON
    JavaScript对象表示法,JSON的英文全称 JavaScript Object Notation。JSON是JavaScript对象和数组的字符串表示法,使用文本表示一个js对象或数组的信息。JSON的本质是字符串
    轻量级的文本数据交换格式,专门存储和传输数据,JSON比XML更小,更快,更易解析
    JSON已经成为了主流的数据交换格式。

  5. JSON的两种结构
    JSON 就是用字符串来表示 Javascript 的对象和数组。所以,JSON 中包含对象和数组两种结构,通过这两种结构的相互嵌套,可以表示各种复杂的数据结构。

    对象结构:对象结构在 JSON 中表示为 { } 括起来的内容。数据结构为 { key: value, key: value, … } 的键值对结构。其中,key 必须是使用英文的双引号包裹的字符串,value 的数据类型可以是数字、字符串、布尔值、null、数组、对象6种类型。

    数组结构:数组结构在 JSON 中表示为 [ ] 括起来的内容。数据结构为 [ “java”, “javascript”, 30, true … ] 。数组中数据的类型可以是数字、字符串、布尔值、null、数组、对象6种类型。

JSON语法注意事项

1.属性名必须使用双引号包裹
2.字符串类型的值必须使用双引号包裹
3.JSON 中不允许使用单引号表示字符串
4.JSON 中不能写注释
5.JSON 的最外层必须是对象或数组格式
6.不能使用 undefined 或函数作为 JSON 的值

JSON 的作用:在计算机与网络之间存储和传输数据。
JSON 的本质:用字符串来表示 Javascript 对象数据或数组数据

  1. JSON和JS对象的关系、JSON和JS对象的互转、序列化与反序列化
    JSON 是 JS 对象的字符串表示法,它使用文本表示一个 JS 对象的信息,本质是一个字符串

JSON反序列化: 要实现从 JSON 字符串转换为 JS 对象,使用 JSON.parse() 方法

JSON序列化:要实现从 JS 对象转换为 JSON 字符串,使用 JSON.stringify() 方法

  1. 数据接口(接口)
    请求的URL的地址就叫做数据接口(接口)。同时必须要有请求方式。

  2. 接口测试工具 -postman
    为了验证接口能否被正常被访问,我们常常需要使用接口测试工具,来对数据接口进行检测。
    好处:接口测试工具能让我们在不写任何代码的情况下,对接口进行调用和测试。

  3. 接口文档
    接口的说明文档,它是我们调用接口的依据。
    好的接口文档包含了对接口URL,参数以及输出内容的说明,参照接口文档就能方便的知道接口的作用,以及接口如何进行调用。

接口名称,接口URL,调用方式,参数方式,响应格式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值