相关动态
41 Ajax 请求数据 get post 接口文档 图书管理案例 机器人聊天案例
2024-11-10 17:09

上网的目的

上网的**本质目的:**通过互联网的形式来 获取和消费资源

41 Ajax 请求数据 get post 接口文档 图书管理案例 机器人聊天案例

服务器

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

客户端

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

URL的概念

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

URL的组成

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

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

注意

  • 客户端与服务器之间的通讯过程,分为请求-处理-响应 三个步骤
  • 网页中每一个资源,都是通过 请求-处理-响应 的方式从服务器获取回来的

步骤

  • 打开浏览器
  • 打开 Chrome 的开发者工具
  • 切换到 面板
  • 选中 页签
  • 刷新页面,分析客户端与服务器的通讯过程

数据也是资源(⭐⭐⭐

网页中的数据,也是服务器对外提供的一种资源,例如股票数据,各行业排行榜等

数据,也是服务器对外提供的一种 资源,只要是资源,必然要通过 请求 - 处理 - 响应 的方式进行获取 如果要在网页中请求服务器上的数据资源,需要用到 对象 (简称 )是浏览器提供的成员,通过它,可以请求服务器上的数据资源 最简单的用法

客户端请求服务器时,请求的方式 有很多种,最常见的两种请求方式分别是 和 请求

  • ,通常用于 获取服务器资源(要资源) 例如:根据 地址,从服务器获取 文件、文件、文件、图片文件、数据资源等
  • ,通常用于 向服务器提交数据(送资源) 例如:登录时,向服务器 提交登录信息、注册时向服务器 提交注册信息、添加用户时向服务器 提交用户信息等各种 数据提交操作

的全称是 (异步 和 ) 通俗理解:在网页中利用 对象和服务器进行数据交互的方式,就是

之前所学的技术,只能把网页做的更美观漂亮,或添加一些动画效果,但还是,能让我们轻松实现 网页服务器之间的 数据交互

场景一:用户名检测

注册用户时,通过 的形式,动态 检测用户名是否被占用

场景二:搜索提示

当输入搜索关键字时,通过 的形式,动态 加载搜索提示列表

场景三:数据分页显示

当点击页码值得时候,通过 的形式根据页码值动态刷新表格的数据

场景四:数据的增删改查

数据的添加、删除、修改、查询操作,都需要通过 的形式,来实现数据的交互

浏览器中提供的 用法比较复杂,所以 对 进行了封装,提供了一系列Ajax相关的函数,极大地 降低了Ajax的使用难度 中发起 Ajax 请求最常用的三个方法如下

  • get方式请求,用于获取数据
  • post方式请求,用于提交数据
  • 比较综合,既可以获取数据,又可以提交数据

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

 

$.get()发起不带参数的请求

使用 $.get() 函数 发起不带参数的请求时,直接提供给 请求的 URL 地址请求成功之后的回调函数 即可,示例代码如下

$.get()发起携带参数的请求

使用 发起携带参数的请求,那么携带的参数应该写在第二个参数的位置,示例代码如下

中 函数的功能单一,专门用来发起请求,从而向服务器提交数据 函数的语法如下

 

$.post() 向服务器提交数据

使用 向服务器提交数据的示例代码如下

相比于 和 函数, 中提供的 函数,是一个功能比较综合的函数,它允许我们对 请求进行更详细的配置。 函数的基本语法如下

发起 get 请求

使用 发起 请求时,只需要将 属性 的值设置为 ‘’ 即可

发起 post 请求

使用 发起 请求,只需要把 属性的值 设置为 ‘’ 即可

使用 请求数据时,被请求的 地址,就叫做 数据接口(简称接口)。同时,每个接口必须有请求方式。 例如

 

1.GET方式请求接口的过程 2.POST方式请求接口的过程

什么是接口文档(⭐⭐⭐

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

接口文档的组成部分

接口文档可以包含很多信息,也可以按需进行精简,不过,一个合格的接口文档,应该包含以下6项内容,从而为接口的调用提供依据

  • **接口名称:**用来标识各个接口的简单说明,如 登录接口获取图书列表接口
  • **接口URL:**接口的调用地址
  • **调用方式:**接口的调用方式,如 GET 或者 POST
  • **参数格式:**接口需要传递的参数,每个参数必须包含 参数名称参数类型是否必选参数说明 这4项内容
  • 响应格式接口的返回值的详细描述,一般包含数据名称数据类型说明3项内容
  • **返回示例(可选:**通过对象的形式,列举服务器返回数据的结构

界面搭建

需要使用到的库和插件

  • 用到的 库
  • 用到的 库
  • 用到 插件

搭建步骤

  • Panel面板搭建
    • 创建panel板 (快捷键
    • 在 里面,创建3个对应的输入框 (快捷键,对应修改标题
    • 在 最后面,创建 按钮 (快捷键),修改内容
  • 图书的表格
    • 创建 table(快捷键
    • 在里面创建对应5个,填写里面内容

获取图书列表数据

步骤

  • 查阅资料中的接口文档,找到获取图书列表的接口
  • 定义 script 标签,创建入口函数
  • 利用 $.get() 方法,传入相应的,和成功之后的回调函数
  • 在回调函数中获取到请求成功的数据
 

渲染图书列表

步骤

  • 根据返回状态码来判断是否成功请求到数据
  • 创建数组,用来存放数据
  • 遍历服务器返回的数组,每遍历一次,利用数组)去
  • 每一行 里面包含了5个
  • 给每一个 设置对应内容即可
  • 遍历循环完毕之后,找到内容容器,先清空当前内容(以免有重复数据,然后添加
 

删除功能实现

删除链接绑定单击事件处理函数
  • 利用 容器,通过事件委派的方式,给动态创建的标签绑定事件
  • 删除图书需要通过删除,所以我们需要得到对应的,我们利用自定义属性的方式,传递过来相应的
删除功能实现
  • 查阅删除的接口文档
  • 在a标签点击事件处理函数里面利用方法,请求服务器,传入要删除的对应
  • 删除成功之后,调用 刷新页面
 

添加功能实现

添加按钮绑定点击事件
  • 获取三个输入框的内容
  • 判断三个输入框是否输入了内容,如果没有进行提示
实现图书添加功能
  • 查阅接口文档
  • 注意接口文档需要提交的参数名,我们需要保持一致
  • 调用 方法,传入请求路径,然后组拼需要提交的参数
  • 在成功回调里面判断返回值是否是201,如果是201代表成功,反之没有成功,进行提示
  • 请求成功之后,调用 方法刷新页面,同时把输入框里面值清空
 

实现功能点

  • 梳理案例代码结构
  • 将用户输入的内容渲染到聊天窗口
  • 发起请求获取聊天消息
  • 将机器人的聊天内容转为语音
  • 通过 播放语音
  • 使用回车发送消息

梳理案例的代码结构

  • 结构梳理
  • 业务代码抽离
  • 函数作用-让聊天框区域自动滚动到底部

将用户输入的内容渲染到聊天窗口

  • 为发送按钮绑定点击事件
  • 在点击事件函数里面判断一下用户输入内容是否为空,注意:如果为空,我们清除一下输入框内容
  • 获取到对应的容器,调用 函数来追加 ,注意:追加的类名叫做
  • 清除文本输入框的值
  • 最后调用一下 ,让聊天框区域自动滚动到底部
 

发起请求获取聊天信息

  • 定义一个函数 接收一个参数,参数就是用户发送的信息
  • 利用 发送一个 GET 方式请求,传入请求地址
  • 定义请求数据
  • 定义成功的回调,在回调函数里面判断返回数据的 是否等于
  • 给容器动态添加返回的内容
 

将机器人聊天内容转成语音

  • 封装函数 接收一个参数,机器人的聊天信息
  • 利用 发送一个 GET 方式请求,传入请求地址
  • 定义请求数据
  • 定义成功的回调,判断返回的状态码是否是200,如果是代表成功
  • 在页面上定义 标签,设置隐藏,等数据返回之后,利用这个 来进行播放。设置 属性来进行自动播放
 

通过回车键发送消息

  • 给文本输入框注册 事件,按键弹起的事件监听
  • 在事件函数里面,通过 来获取对应的按键的 机器码
  • 判断 是否等于 13(不需要去记忆,开发时候打印调试一下就行了,如果是,代表是回车键
  • 如果是回车键,模拟用户点击
    以上就是本篇文章【41 Ajax 请求数据 get post 接口文档 图书管理案例 机器人聊天案例】的全部内容了,欢迎阅览 ! 文章地址:http://tiush.xhstdz.com/quote/60969.html 
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 物流园资讯移动站 http://tiush.xhstdz.com/mobile/ , 查看更多   
发表评论
0评