两个常用的ajax发送请求方法

145 阅读2分钟

「这是我参与2022首次更文挑战的第4天,活动详情查看:2022首次更文挑战」。

使用ajax发送请求

axios的GET请求

axios({
      method'请求的类型',
      url'请求的URL地址',
      params: {id: 1, bookname: '红楼梦'} // params用于传递参数,可选
}).then((result) => {
      // .then 用来指定请求成功之后的回调函数
      // 形参中的 result 是请求成功之后的结果
})

注意: GET参数的本质就是把参数用 & 符号链接起来放到路径的最末尾用 ?分隔

Ajax的POST请求

POST请求和GET请求不一样,POST请求一定会伴随着请求参数,因为如果没有参数,我们就不必使用POST请求了,且POST请求的功能就是推送数据:

axios({
  method'POST',
  url'http://www.liulongbin.top:3009/api/addbook',
  data: { bookname: '三体', author: '刘慈欣', publisher: '北京人民出版社' }
}).then(({ data: res }) => {
  // 从 .then(fn) 回调函数的形参中,解构赋值出 data 属性,重命名为 res
  console.log(res)
})

ajax的请求方式一共有五种:

1.post

2.get

3.delete

4.put

5.patch

而post和get是最常用的,这里只举例post和get

请求报文和响应报文

客户端与服务器通信的过程是基于请求与响应的。其中:

  • 请求报文规定了客户端以什么格式把数据发送给服务器
  • 响应报文规定了服务器以什么格式把数据响应给客户端 请求报文:

image.png

响应报文 :

image.png

http 响应状态码 和 业务状态码是不同的:

  1. 所处的位置不同:在响应头的状态行中所包含的状态码,叫做“响应状态码”在响应体的数据中所包含的状态码,叫做“业务状态码”。

  2. 表示的结果不同:响应状态码只能表示这次请求的成功与否(成功 地失败了)业务状态码用来表示这次业务处理的成功与否

  3. 通用性不同:响应状态码是由 http 协议规定的,具有通用性。每个不同的状态码都有其标准的含义,不能乱用。业务状态码是后端程序员自定义的,不具有通用性。