一名前端工程师的自学之路!Js篇(03-13更新)
2018-03-13 20:49
302 查看
什么是AJAX?
异步的javascript and xml ,是一种提供动态交互的网页开发技术。AJAX的作用
当向后台发送少量的数据时,通过AJAX的技术可以实现界面局部刷新,提高程序的运行效率。ajax技术可以实现整个页面无刷新同步和异步的区别
异步:同时执行,也叫并发执行。(统筹,定时器是异步执行的。生活中的同步是AJAX的异步顺序。)同步:顺序执行,(js中的代码执行过程就是同步的)。进程和线程
进程不等于程序,进程就是程序从开始执行到结束的一个过程。单线程:javascript 就是单线程的 (同步)
多线程:多线程 异步 同时执行
AJAX的请求方式
get 从服务器获取数据 传输的数据量小 。post 向服务器发送数据 输送的量没有要求 安全性更好 。
AJAX请求数据过程
1、准备一个ajax独对象if(window.XMLHttpRequest){ajax = new XMLHttpRequest();}else{ajax = new ActiveXObject("Microsoft。XMLHTTP")}2、和服务器建立连接----通过open方法ajax.open("get","url","true");第一个参数 : 请求方向;第二个参数 : 请求路径;第三个参数 : 同步/异步 true 表示异步3、发送数据ajax。send();4、服务器相应数据 并将处理结果返回给客户端通过 onreadystatechange 事件相应服务器的数据根据 readState 判断数据//服务器相应数据核实,并将处理的结果返回客户端ajax.onreadystatechange = function(){if(ajax.readyState==4){if(ajax.status == 200){//交易成功返回数据alert( ajax.responseText );}}}缓存
计算机中的缓存 : 是CPU和内存之前的一块存储区 容量小 交换数据速度快浏览器中的缓存 : 记录浏览的历史记录的数据IE浏览器容易出现缓存问题解决办法 : 更改URLajax.open("get",(this.index+1)+".txt?id="+new Date().getTime(),true);ajax.open ("get",(this.index+1)+".txt?id="+Math.random(),true );AJAX的post提交和get提交的区别
post方式需要设置请求头 请求头必须在open下面 注意顺序问题ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");从服务器返回的数据永远都是字符串。同源策略
所谓的同源 就是指 ajax在请求数据时, 保证 协议、域名、端口号 完全一致,才能够通过请求同源策略是浏览器的一个行业标准,有了同源策略保证用户数据的安全性。所有的javascript都要遵循这个同源策略的ajax不能实现跨域请求数据(受同源策略的影响不能实现跨域)jsonp的跨域访问数据
什么是jsonp:json with padding, 是json的一种数据使用模式,可以通过jsonp实现数据的跨域访问。jsonp跨域的原理: 通过动态创建script标签,然后设置src的路径为服务器提供的接口路径,通过一个回调函数callback将服务器信息返回。欢迎大家持续关注。号内有多个专题,小程序(持续更新中),Javascript(持续更新),Vue(视频)等学习资源。觉得有收获的可以收藏关注,欢迎骚扰,一起学习,共同进步。我的小程序,自律更自由,如果你也喜欢锻炼的话在这里寻找你的小伙伴吧。
一只喜欢锻炼的程序猿,嘿嘿。
你
a542
都看到这了,不点个关注就过分了哈~
相关文章推荐
- 一名前端工程师的自学之路!Js篇(03-05更新)
- 一名前端工程师的自学之路!Js篇(03-14更新)
- 一名前端工程师的自学之路!Js篇(03-07更新)
- 一名前端工程师的自学之路!Js篇(11-20更新)
- 一名前端工程师的自学之路!Js篇(12-05更新)
- 一名前端工程师的自学之路!Js篇(02-26更新)
- 一名前端工程师的自学之路!Js篇(01-07更新)
- 一名前端工程师的自学之路!Js篇(12-14更新)
- 一名前端工程师的自学之路!Js篇(11-22更新)
- 一名前端工程师的自学之路!Js篇(11-27更新)
- python自学之路-03
- 0-1 多重 组合背包的自学之路(不断更新中)
- Android自学之路-- 03:访问通讯录,并向通讯录中添加联系人
- 0-1 多重 组合背包的自学之路(不断更新中)
- Java自学之路-Java基础教程-13:Java基本语句之3-循环控制语句while和do while
- 一名非计专大三学生的自学之路
- 【重大更新】DevExpress v16.2新版亮点(HTML5/JS篇)
- java每日面试题13/02/03
- 喝酒不骑马的Android自学日记(13)-Fragment生命周期&数据传递
- 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表