AJAX

ajax的使用
Ajax的核心技术是XMLHttpRequest对象

1、创建ajax对象 xhr=new XMLHttpRequest()
2、建立连接 xhr.open(请求类型get post,url,是否异步true/ false)
3、发送请求 xhr.send();
4、返回数据
成功
渲染到页面

xhr.readyState
0 未初始化 创建对象
1 启动 open
2 发送 send
3 接收 部分数据
4 完成 全部完成数据

xhr.status HTTP的响应状态 200 <=status< 300 || status=304

返回的数据两种格式:
.responseText; 字符串
.responseXML XML

------------------------------------------
get方式的特点:

url="http://www.baidu.com?user=20&pwd=123&id=20"

get: 传参 特点:?age=20&sex=男&id=20
优点:简单直接 ,在地址栏 ?参数名=值&参数名=值....
缺点:只能少量数据 安全性低

get方式解决缓存的问题
路径?num=Math.random()
路径?now=new Date().getTime()

php:
php拼接用 .


url=`http://www.baidu.com?name=${user}&pw=${pwd}`
<?php
$user=$_GET["name"];
$pwd=$_GET["pw"];

echo $user.$pwd;
?>
---------------------------
post方式的特点:
优点:能传递大量数据,安全性高

data="user=20&pwd=123&id=20"
请求头
xhr.setRequestHeader('Content-Type',"application/x-www-form-urlencoded");
xhr.send(data)


get和post区别:
1.get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
2.get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,因服务器的不同而异。
3.Get是不安全的,因为在传输过程,数据被放在请求的URL中。Post的所有操作对用户来说都是不可见的。

实现一个AJAX异步调用和局部刷新,通常需要以下几个步骤
创建XMLHttpRequest异步调用对象
创建一个新的HTTP请求,并指定该HTTP请求的方法、URL.
设置响应HTTP请求状态变化的函数
发送HTTP请求
获取异步调用返回的数据

posted @ 2018-06-21 18:05  maps..xy  阅读(61)  评论(0编辑  收藏  举报