智能社JS学习笔记(六)

AJAX基础

什么是AJAX?无刷新数据读取,可用于用户注册,在线聊天室等

——服务器

       创建自己本地服务器:可用node.js,使用 npm install -g http-server 全局安装后,在需要创建服务器目录的目录下打开命令行工具,如Git bash,输入http-server即可,默认端口为8080,默认地址 localhost:8080.

——使用AJAX
         基础:请求并显示静态TXT文件

        字符集编码:UTF-8,GB2312等,要求所有的文件都必须是统一的编码

        缓存:IE下需将浏览器关闭重启后才能刷新缓存

        工作原理:根据URL进行缓存,同一个地址读取一次

        阻止缓存:使URL一直更换

     

——动态数据:请求JS或json文件

       eval() 的使用:将字符串转换为JS可识别的东西,使用ajax请求出的数据均为字符串

——AJAX原理

       HTTP请求方法

       GET方式(通过网址传递):把数据放入URL,基本格式为 名字=值&名字=值,容量小(浏览器URL长度有限),安全性差,有缓存;一般用于获取数据(如:浏览帖子)

       POST方式(不通过网址(http content)):容量大(2G),安全性好一点,没有缓存;一般用于上传数据(如:用户注册)

       较高的安全方式:https


AJAX中级

——变量与属性:全局变量属于window的一个属性

        在JS中,如果用没有定义的一个变量会报错,但如果使用没有定义的属性为undefined


——同步及异步

        同步一件一件事来异步多件事一起做

——readyState 的状态


——编写AJAX

       步骤:1.创建AJAX对象;2.连接到服务器;3.发送请求(告诉服务器要哪个文件);4. 接收返回值

function ajax(url,fnSucc,fnFaild){
    //创建AJAX对象
	var oAjax = new XMLHttpRequest();     //不兼容IE6

	// 连接服务器  open(方法,文件名,异步传输)
	oAjax.open('GET',url,true);   //后面加时间清空缓存

	//发送请求
	oAjax.send();

	//接收返回
	oAjax.onreadystatechange = function(){    //判断浏览器和服务器,进行到哪一步了
		     
		if(oAjax.readyState == 4){     //读取完成
           if(oAjax.status == 200){    //成功
              fnSucc(oAjax.responseText)  //获得从服务器发送回来的文本,成功
           }else {
           	  if(fnFaild){
           	  	fnFaild(oAjax.status)    //显示错误码,失败
           	  }    
           }        			
        }
    }	
} 
封装了一个名为AJAX的JS函数,方便以后调用,调用格式
window.onload = function(){
        	var oBtn = document.getElementById('btn1');

        	oBtn.onclick = function(){
        		ajax('a.txt?t=' + new Date().getTime(),function(str){
        			console.log(str)
        		})
        	}
        }

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值