Ajax

客户端和服务端

服务器:上网过程中,负责存放和对外提供资源的电脑,叫做服务器

客户端:上网过程中负责获取和消费资源的电脑,叫做客户端

URL

地址的概念

URL中文叫统一资源定位符,用于标识互联网上的每个资源的唯一存放位置。浏览器只有通过URL地址,才能正确定位资源的存放位置,从而正确的访问到对应的资源

地址的组成部分

URL地址一般由三部分组成:

  • 客户端与服务器之间的通信协议(协议)
  • 存有该资源的服务器名称(域名)
  • 资源在服务器上具体的存放位置(路径)

了解Ajax

什么是Ajax

Ajax的全程是异步 Javascript 和 XML

通俗的理解是:在网页中利用XMLHttpRequest对象和服务进行数据交互的方式就是Ajax

为什么要学Ajax

之前所学的技术,只能把网页做得更美观。但是Ajax能让我们轻松实现网页与服务器之间的数据交互

Ajax的典型应用场景

  • 数据分页显示:当点击页码值的时候,通过ajax的形式,根据页码值动态刷新表格的数据
  • 数据的增删改查:数据的添加、删除、修改、查询操作,都需要通过ajax的形式,来实现数据的交互

JQuery中的Ajax

了解JQuery中的Ajax

浏览器中提供的XMLHttpRequest用法比较复杂,所以jQuery对XMLHttpRequest进行了封装,提供了一系列Ajax相关的函数,极大地降低了Ajax的使用难度

jQuery中发送Ajax请求最常用的三个方法如下:

  • $.get()
  • $.post()
  • $.ajax()

$.get()函数的语法

jQuery中此函数功能单一,专门用来发起get请求,从而将服务器上的资源请求到客户端来使用。

语法:$.get(url,{data},[callback])

  • url:类型为字符串,必选项,指要请求的资源地址
  • data:类型为对象,非必选项,指请求资源期间要携带的参数
  • callback:类型为函数,非必选项,指请求成功时的回调函数

$.post()函数的语法

jQuery中此函数功能单一,专门用来发起post请求,从而向服务器提交数据

语法:$.post(url,{data},[callback])

  • url:类型为字符串,必选项,指要请求的资源地址
  • data:类型为对象,非必选项,指请求资源期间要携带的参数
  • callback:类型为函数,非必选项,指请求成功时的回调函数

$.ajax()函数的语法

相比于前两个函数,jQuery中提供的此函数,是一个功能比较综合的函数,它允许我们对Ajax请求进行更详细的配置

$.ajax()函数的基本语法如下:

$.ajax({
type:’ ‘, //请求的方式,如 GET or POST
url:’ ‘, //请求的URL地址
data:{ }, //这次请求要携带的数据
success:function(res){ } //请求成功之后的回调函数
})

接口

接口的概念

使用Ajax请求数据时,被请求的URL地址,就叫做数据接口,同时每个接口必须有请求方式

接口文档

接口文档的概念

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

接口文档的组成部分

接口文档可以包含很多信息,一般包含一下内容

  • 接口名称:用于标识各个接口的简单说明
  • 接口URL:接口的调用地址
  • 调用方式:接口的调用方式
  • 参数格式:接口需要传递的参数
  • 响应格式:接口的返回值的详细描述
  • 返回示例:举个成功的例子

form表单

表单的概念

表单在网页中主要负责数据采集。HTML的form就是用于采集用户输入的信息,并通过form标签的提交操作,把采集到的信息提交到服务器端中进行处理。

表单的组成部分

  • 表单标签
  • 表单域
  • 表单按钮

form标签的属性

action
  • 值:URL地址
  • 描述:规定当提交表单时,向何处发送表单数据
method
  • 值:get或者post
  • 描述:规定以何种方法把表单数据提交到action URL
target
  • _blank:在新窗口中打开
  • _self:默认,在相同的框架中打开
  • _parent:在父框架集中打开
  • _top:在整个窗口中打开
  • framename:在指定框架中打开
enctype
  • application/x-www-form-urlencoded:默认的编码方式。基于uri的percent-encoding编码的,表单里的数据被编码为名称/值对,但是在用文本的传输和MP3等大型文件的时候,使用这种编码就显得 效率低下
  • multipart/form-data:指定传输数据为二进制类型,比如图片、mp3、文件。 这个一般文件上传时用。它告诉我们传输的数据要用到多媒体传输协议,由于多媒体传输的都是大量的数据,所以规定上传文件必须是post方法,type=”file”,浏览器会把整个表单以控件为单位分割。并为每个部分加上Content-Disposition(form-data或者file),Content-Type(默认为text/plain),name(控件name)等信息,并加上分割符(boundary)。
  • text/plain:纯文体的传输。空格转换为 “+” 加号,但不对特殊字符编码。

表单的缺点

如果使用表单提交数据,则会导致页面之前的状态和数据丢失

解决方案是:表单只负责采集数据,Ajax负责将数据提交到服务器

快速获取表单中的数据

  • serialize函数

模板引擎

基本概念

可以根据程序员指定的模板结构和数据,自动生成一个完整的HTML页面

好处

  • 减少了字符串的拼接操作
  • 使代码结构更加清晰
  • 使代码更易于阅读和维护

art-template模板引擎

  • 导入art-template
    • 只要导入模板引擎,在window全局多一个函数,叫做template(‘模板的id’,需要渲染的数据对象)
  • 定义数据
  • 定义模板
    • 例如script type=”text/html” 这样就可以在script里面写html且不报错
    • 在双括号里面写你调用数据的名字
  • 调用template函数
  • 渲染HTML
    • 再用你要放html的box渲染,element.html()即可

art-template标准语法

p30


Ajax
http://example.com/2023/06/24/Ajax/
作者
TaskManagerOL
发布于
2023年6月24日
许可协议