ajax详解

AJAX 指异步 JavaScript 及 XML

AJAX不是一个新的技术,而是一个使用现有的技术的新方法( XMLHttpRequest )。

AJAX不能查数据库,他可以请求(get/post)一个PHP文件。让这个PHP文件查询数据。

<script type="text/javascript">
        var request;
        if(window.XMLHttpRequest){  
            request = new XMLHttpRequest; //IE7,Firefox,Chrome,opera,Safari
        }else{  
            request = new ActiveXObject("Microsoft.XMLHTTP");  //IE6.IE5
        }

        console.log(request);

    </script>

get与post区别:
1、post提交的数据大小理论没有限制,get一般有限制( 浏览器 )
2、安全性, post更安全,get相对不安全
3、get是通过url参数数据,post通过表单

从http协议角度出发:
get与post的区别:一般认为get是用来获取数据的,post是向服务器提交数据的。
协议本身没有对get/post的大小做限制,get的数据传输大小有限制,是浏览器限制的

ajax的get请求

 //1.得到一个对象
        var ajax = new XMLHttpRequest();


        // 2.  选择请求方式打开那个PHP文件,
        //open('get/post', '请求的PHP文件的路径', true/false);//true代表异步,false是同步
        ajax.open('get', './php/1.php?name='+uname, true);



        // 3. 确认、发送请求
        ajax.send();


        // 4.获取服务器给我们返回的数据
        ajax.onreadystatechange = function(){//当状态改变的时候,就执行我们匿名函数
            //只关心readyState == 4的状态
            if( ajax.readyState == 4  && ajax.status == 200 ){

                //ajax.status  获取到http的状态码。200代表成功
                console.log(ajax.status);

                //alert('请求成功');

                //拿到服务器的数据
                var res = ajax.responseText;//responseText  获取是响应的文本

                var box = document.getElementById('box');
                box.innerHTML = res;

            }
        }

ajax的post请求

<script>
        var ajax = new XMLHttpRequest();// XML + Http + Request

        ajax.open('post','./php/4.php', true);

        //在发送操作之前,先要进行编码
        //不用记住,其他的步骤要记住。
        ajax.setRequestHeader("Content-type","application/x-www-form-urlencoded");

        //post的方式,传递的参数写在send()方法里面
        ajax.send('id=1&name=jack');

        ajax.onreadystatechange = function(){

            if(ajax.readyState ==4 && ajax.status == 200){

                var res = ajax.responseText;

                console.log(res);
            }
        }
    </script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值