主要包括get请求参数处理和参数传递问题。
- get请求参数处理
// 1、请求参数拼接
var param = "uname="+uname + "&password=" + password;
// 2、将拼接后的参数进行编码,然后拼接到请求路径URL上
xhr.open("get", "01test.html?" + encodeURI(param), true);
- get请求参数传递
// 在执行请求发送时,必须传递参数为null
xhr.send(null);//get请求,这里需要传递参数null
完整示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>请求参数分析</title>
<script type="text/javascript">
/**
* 使用Ajax发送请求的步骤:
*/
//1、创建XMLHttpRequest对象
// var xhr = new XMLHttpRequest();// IE6不支持
// 兼容性处理方法
var xhr = null;
if (window.XMLHttpRequest){
xhr = new XMLHttpRequest();
} else {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
// 另一种方法
// try {
// xhr = new XMLHttpRequest();
// } catch (e){
// xhr = new ActiveXObject("Microsoft.XMLHTTP");
// }
// 2、准备发送
var param = "uname="+uname + "&password=" + password;
// xhr.open(method, url, async);
xhr.open("get", "01test.html?" + encodeURI(param), true);
// 3、执行发送
xhr.send(null);//get请求,这里需要传递参数null
// 4、指定回调函数
xhr.onreadystatechange = function (){
if (xhr.readyState == 4){
if (xhr.status == 200){
var data = xhr.responseText;
if (data == 1){
console.log("请求成功");
} else {
console.log("用户名或密码错误");
}
}
}
};
</script>
</head>
<body>
</body>
</html>