标签:
javascript ajax
request.open("POST","get.php",true);
request.setRequestHeader("Content-type","application/x-www-form-urlencoded");//告诉服务器是"POST"请求
request.send("username=王二狗&password=123456");
//Http请求有两种方式,"POST"和"GET","POST"一般用于修改服务器数据时使用如提交表单,安全,"GET"一般用于请求得到数据时使用,获得的数据会显示在url上
var request = new XMLHttpRequest(); //创建一个异步对象,建立一个XMLHttpRequest对象,ie5、6不支持,通过这个对象作为前台与后 台的中间处理器,进行数据交互
request.open("GET","get.php?number=1&sex=男 ",true); //"GET"定义后发送的方式和url及参数,"POST"参数写在send(参数);
request.send(); //将前台需要的http请求发送
request.onreadystatechange = function(){ //onreadystatechange监听request
if(request.readyState===4&&request.status===200){ //request.readyState判断响应变化情况-4代表响应完成
request.status判断请求是否完成--200完成
var text = request.responseText; //获取查询结果
}
}
服务器端(url地址端)需写好接口处理客户端发送过来的请求及做对应的动作
浏览器在地址栏输入url并回车属于get方法,服务器端接收到这个Http请求,在写好的脚本中判断,符合则返回页面
(浏览器通过url访问服务器,服务器端判断true后返回一个html页面的过程?)
在地址栏中打url要发送参数:url?number=1&sex=男
当服务器返回json数据时,客户端用var jsonDate = JSON.parse(request.responseText) //获取json格式数据对象
jQuery ajax
$(function(){
$.ajax(){
type:"POST",//"GET"不需要data
url:,
data:{
name:$().val(),
number:$().val(),
sex:$().val(),
job:$().val()
},
dataType:"json",
success:function(obj){
},
error:function(obj){
alert("发生错误:"+obj.status);
}
}
})
跨域
http:// www . abc.com :8080 / scripts/jquery.js
协议 子域名 主域名 端口号 请求资源地址
当协议 子域名 主域名 端口号任意一个不同时,算不同域,不同域间相互请求资源就算作"跨域"
解决方案:
1、后台使用代理
2、jsonp
前端 dataType:"jsonp",
jsonp:"callback",
后台 $jsopn = $
$jsopn.
3、XHR2
标签:
原文地址:http://www.cnblogs.com/alex-web/p/4870137.html