原生JS进行AJAX请求与jQuery中的AJAX方法

ajax:

概念:

Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。
Ajax = 异步 JavaScript 和 XML 或者是 HTML(标准通用标记语言的子集)。
Ajax 是一种用于创建快速动态网页的技术。
Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
传统的网页(不使用 Ajax)如果需要更新内容,必须重载整个网页页面。(百度百科)
实现:

  1. get方式:(如果有参数需要传递要用’?'拼接在地址后面)
        let xhr = new XMLHttpRequest();
        xhr.open("GET","http://localhost:9000");//本地服务器端口9000
        xhr.send(null);
        xhr.onreadystatechange = function(){
            if(this.readyState===4&&this.status===200){
                console.log(this.responseText);        
            }
        }
  1. post方式:
        let xhr = new XMLHttpRequest();
        xhr.open("POST","http://localhost:9000");//本地服务器端口9000
        xhr.send(data); //发送参数数据
        xhr.onreadystatechange = function(){
            if(this.readyState===4&&this.status===200){
                console.log(this.responseText);        
            }
        }

jQuery中的ajax实现:

  1. get方式:

1)无参数传递

function getData() {
           // get  无参
            $.ajax({
                url:"http://localhost:3000",          //服务器地址
                type:"GET",                            //请求类型
                success:function(msg){                   //接收成功时的数据
                    console.log(msg);
                },
                error:function(err){
                    console.log(err);
                }
            });
        }

2)有参数传递

function getData() {
//get 有参数
            $.ajax({
                url:"http://localhost:4000",
                type:"GET",
                data:"name=java",
                success:function(data){
                    console.log(data);
                },
                error:function(err){
                    console.log(err);
                }
            });
       }
  1. post方式

1)无参数传递:

function getData() {
//post 无参
             $.ajax({
                url:"http://localhost:3000",          //服务器地址
                type:"POST",                            //请求类型
                success:function(msg){                   //接收成功时的数据
                    console.log(msg);
                },
                error:function(err){
                    console.log(err);
                }
            });
       }
  1. 有参数传递:
function getData() {
 //post有参数
            $.ajax({
                url: "http://localhost:5000",
                type: "POST",
                // data: "username=admin&pwd=123",
                data:{username:"admin",pwd:"123"},
                success: function (msg) { //接收成功时的数据
                    console.log(msg);
                },
                error: function (err) {
                    console.log(err);
                }
            });
       }
  1. jsonp格式解决跨域:
function getData() {
$.ajax({
                url:"https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=美食",
                dataType:"jsonp",           //支持jsonp
                jsonp: "cb",//服务端用于接收callback调用的function名的参数  
                success:function(data){
                    console.log("正确:",data);
                },
                error:function(err){
                    console.log('错误:',err);
                }
            });
       }

注意:调用后进error一般都是返回的数据格式问题

你可能感兴趣的:(Ajax)