10.20 Ajax 第一天 服务器概念和ajax

一、服务器相关基础概念

二、Ajax的基础用法

三、请求报文&响应报文

四、接口相关的基础概念


1.客户端

        前端开发中,特指“web浏览器”

        作用:将互联网世界中的Web资源加载,并呈现到浏览器窗口供用户使用

2.服务器

        概念:提供服务的设备

        如:百度云服务器、知乎网站的服务器

3.客户端与服务器通信的过程

        两步骤:请求-响应

        请求:客户端通过网络去找服务器要资源的过程

        响应:服务器把资源通过网络发送给客户端的过程

4资源与URL地址

    (1)资源在服务器上

       (2)URL地址      

               a. 协议

                       概念:网络协议的简称,用来确保通信双方能读懂彼此发送的消息的内容。

        

                b.主机名

                        概念:主机名同来标识互联网中服务器的唯一性。

                c.端口号

                        概念:0-65535,主要作用是表示一台计算机中特定进程所提供的服务。

                                80端口可以省略不写


1.Ajax

        浏览器的技术,用来实现客户端网页请求服务器的数据

2.Ajax五种请求数据的方式

        

POST  向服务器新增数据
GET从服务器获取数据
DELETE删除服务器的数据
PUT更新服务器的数据(完整更新)
PATCH更新服务器的数据(部分更新 补丁)

3.发送get请求

<body>
  <!-- 必须先导入 axios 的库文件,然后就可以调用 axios() 函数了 -->
<script src="../学生练习初始-源代码/lib/axios.js"></script>
  <script>
    // =================================== 目标 ===================================
    // 发起 GET 请求,获取图书列表的数据
    // http://www.liulongbin.top:3009/api/getbooks
    axios({
      url:'http://www.liulongbin.top:3009/api/getbooks',
      method:'get'
    }).then(function(result){
      //回调函数在成功后执行
      console.log(result)
      console.log(result.data)
    })
  </script>
</body>

       (1)参数

                        params:查询条件

    axios({
      url:'http://www.liulongbin.top:3009/api/getbooks',
      method:'get',
      params:{//参数查询条件
        id:2
      }
      
    }).then(function(result){
      console.log(result)
      console.log(result.data)

    })

也可以写为 (本质)

url:'http://www.liulongbin.top:3009/api/getbooks?id=2',

        (2)URL编码

               URL 地址不允许出现中文,特殊符号

         encodeURI()  编码

        decodeURI()  解码

console.log(encodeURI('红楼梦'))//%E7%BA%A2%E6%A5%BC%E6%A2%A6
    console.log(decodeURI('%E7%BA%A2%E6%A5%BC%E6%A2%A6'))

4.发送post请求

    document.querySelector('#btnPOST').addEventListener('click',function(){
      axios({
      method:'post',
      url:'http://www.liulongbin.top:3009/api/addbook',
      data:{
        bookname:'历险记',
         author:'不要',
        publisher:'黑马出版社'
      }
      
    }).then(({data:res})=>{
      console.log(res)
    })
    })

                 post 可以带数据data,也可以带查询参数,但get不可以写数据data(没用)

5、查询账号密码

 // 请求方式 POST
    // 地址 http://www.liulongbin.top:3009/api/login
    // 参数:  username 用户名     password  密码
      // 1
    document.querySelector('#btnLogin').addEventListener('click',function(){
      // 2
      let username=document.querySelector("#username").value
      let password=document.querySelector("#password").value
      // 3.
      axios({
        url:'http://www.liulongbin.top:3009/api/login',
        method:'post',
        data:{
          username:username,
          password//当属性和值同名时可以简写 
        }
      }).then(({data:res})=>{
        console.log(res)

        if(res.code===200){
          alert('恭喜你登录成功,稍后将跳转到首页')
          location.href='http://www.jd.com'
        }else{
          alert(res.msg)
        }
      })
    })


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

          响应报文规定了服务器以什么格式把数据响应给客户端

1、请求报文         

        请求行(位于network-headers-request-headers),请求头,请球体(位于network-rayload),空行

 2.响应报文

               状态行,响应头部,响应体和空行四部分组成

3 http响应状态码

        位于状态行中所包含的状态码

4业务状态码

        位于响应体的数据体所包含的状态码

         作用:判断请求是否成功


1接口

        使用Ajax请求数据时,被请求的URL地址,就叫做数据接口(简称API接口或接口)

  2接口文档

        相当于说明书

        组成部分:

                

接口名称区分每个接口的作用,如登录接口,添加图书接口
接口URL
请求方式
请求参数
返回示例
返回参数说明

   3.测试工具

postman

postcode

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值