• ajax(补发)


    首先我们要清楚ajax是什么?ajax是前后台数据交互依赖的技术,其优点是可以不刷新网页而更新局部内容。那么ajax如何书写呢?

    首先ajax的本质是xmlHttpRequest对象;既然是对象那么通过new生成是肯定的

    var ajax=new xmlHttpRequest()   在控制台输出ajax 对象 会得到 很多属性  其中

    readyState  请求的五个阶段 0 1 2 3 4

    responseText  返回的文件内容

    Status  状态吗  返回的状态信息  

    200 代表加载成功

    3xxx代表禁用

    404 文件没有找到

    5xx 服务器问题

    原生ajax书写:

     

    var ajax=new XMLHttpRequest
      ajax.open(get,“路径”,true)
      ajax.send()
      ajax.onreadystatechange=function(){
        if(ajax.readyState==4){
          if(ajax.status==200){
            fn(ajax.responseText)
          }
        }
      }

    封装成插件后:

    function ajax(methods,url,reval,fn){  //methods是传输数据的方法 url是数据的路径 reval 是是否异步一般为true  fn为后台数据加载成功后执行的函数。
      var ajax=new XMLHttpRequest
      ajax.open(methods,url,reval)
      ajax.send()
      ajax.onreadystatechange=function(){
        if(ajax.readyState==4){
          if(ajax.status==200){
            fn(ajax.responseText)
          }
        }
      }
    }

    methods:get 看得见,传送数据小,通过网络地址传;post 看不见,传送数据大一些,通过http中的某个对象的一个body属性

    ajax跨域

     

    不在同一个服务器下 就是 协议 域名 端口 三者有一个不一样就是跨域

     

    请求的地址和浏览器的地址必须在同域下,就是说协议端口域名都得一样。

    1.靠标签身上的src属性解决跨域的问题,利用script标签的src属性去请求外部的数据 2.看网络地址 关键单词 cbcallback

     

     

  • 相关阅读:
    详解 ES6 Modules
    es6常用基础合集
    透彻掌握Promise的使用,读这篇就够了
    Initialization of deep networks
    Logistic Regression and Gradient Descent
    一定要在年轻的时候读最难的书
    DEEP LEARNING WITH STRUCTURE
    我和NLP的故事(转载)
    Common Pitfalls In Machine Learning Projects
    C++中debug和release的区别 . 转载
  • 原文地址:https://www.cnblogs.com/jialaoshizaixianjiaoxue/p/10522779.html
Copyright © 2020-2023  润新知