zoukankan      html  css  js  c++  java
  • Ajax学习之小结

    ajax:
     * 同步交互和异步交互:
      * 同步交互:客户端发送请求——>等待服务器端处理——>接收响应,这个过程客户端不能做任何其他事情,这种模式叫做同步交互
      * 异步交互:客户端发送请求——>等待服务器端处理——>接收响应,这个过程客户端不用等待结果,可以做其他事情,这种模式叫做异步交互
      
      * ajax的定义:允许客户端与服务器进行通信,而无须刷新整个页面的技术叫做ajax。
     
      * 对比传统web模式与ajax模式的区别:
          * 传统web模式:客户端与服务器通信,交互的是整个页面
          * ajax模式:客户端与服务器通信,交互的是数据层面的
      
      * ajax的工作原理:在客户端与服务器进行通信的时候,客户端的请求首先发送给"ajax引擎",再由"ajax引擎"发送到服务器端
     
      * XMLHttpRequest对象:是使用ajax技术的关键
     
      * 实现ajax的步骤:
          * 创建XMLHttpRequest对象
          * 获取xmlhttpQequest对象

          * 注册监听
          * 利用XMLHttpRequest对象的onreadystatechange属性来监听服务器的通信状态:
          * 服务器的通信状态具体由XMLHttpRequest对象的readyState属性来获取
            * readyState 属性表示Ajax请求的当前状态。它的值用数字代表。
              0 代表未初始化。 还没有调用 open 方法
              1 代表正在加载。 open 方法已被调用,但 send 方法还没有被调用
              2 代表已加载完毕。send 已被调用。请求已经开始
              3 代表交互中。服务器正在发送响应
              4 代表完成。响应发送完毕
         * 再利用XMLHttpRequest对象的另一个属性status,来获取访问服务器端是否正确
            * 常用状态码及其含义:
              404 没找到页面(not found)
              403 禁止访问(forbidden)
              500 内部服务器出错(internal service error)
              200 一切正常(ok)
              304 没有被修改(not modified)(服务器返回304状态,表示源文件没有被修改 )
       
         * 接收服务器的响应数据:
              * 文本格式:利用XMLHttpRequest对象的responseText属性来接收;
              * xml格式:利用XMLHttpRequest对象的responseXML属性来接收;
              * json格式:利用XMLHttpRequest对象的responseText属性来接收,再利用eval()函数进行转换。
              * 利用"{}"开始和结尾的,相当于map集合
              * 利用"[]"开始和结尾的,相当于数组
         
         * 与服务器建立连接
              * 利用XMLHttpRequest对象的open(method,url,asynch)方法
              * method:请求类型,"GET"或者"POST"
              * url:请求路径
              * asynch:是否异步加载,true是异步加载
        
         * 如果请求类型时"POST"方式的话,需要设置请求首部信息
              * 利用XMLHttpRequest对象的setRequestHeader()方法
         * xhr.setRequestHeader("Content-type","application/x-www-form-urlencode")
        
         * 向服务器发送请求数据
              * 利用XMLHttpRequest对象的send()
              * 如果是"GET"请求类型的话,send()方法向服务器发送请求数据,服务器接收不到
              * 如果是"POST"请求类型的话,send()方法向服务器发送请求数据,服务器可以接收
      
      
      
         * 服务、服务器、中间件、servlet:
             * 服务:发布后的工程
             * 服务器:硬件承载容器,实际上就是电脑硬件
             * 中间件:tomcat、weblogic[oracle]、webshpere[IBM]
             * servlet:服务上,具体处理相关内容的文件
       
       
       
        
       
       
       

  • 相关阅读:
    单例模式-静态内部类方式
    单例模式-懒汉式(双重检验)
    单例模式-懒汉式
    sonarqube7.2版本web api简析
    sonarqube集成maven插件,上传扫描结果
    sonarQube快速入门7.2版本下载pmd插件,并设置只使用pmd规则
    gradle使用dokka插件出现Exception while loading package-list from ExternalDocumentationLinkImp
    让linux后解压的资源权限就是777(工作笔记)
    java并发 无锁cas的最简单理解
    java 必须要懂点的包 今日研究小结
  • 原文地址:https://www.cnblogs.com/sunfie/p/4737762.html
Copyright © 2011-2022 走看看