ajax请求中post和get请求的区别
区别和其他语言中的用法区别是一样的,和ajax没关系,就不在此赘述了。
以下是个人观点:
都是向服务器发送请求,区别在用的情景不同:
GET - 从指定的资源请求数据。
POST - 向指定的资源提交要被处理的数据
2其他的区别,不是重点,可以了解
GET 请求的其他一些注释:GET 请求可被缓存
GET 请求保留在浏览器历史记录中
GET 请求可被收藏为书签
GET 请求不应在处理敏感数据时使用
GET 请求有长度限制
GET 请求只应当用于取回数据POST 请求的其他一些注释:
POST 请求不会被缓存
POST 请求不会保留在浏览器历史记录中
POST 不能被收藏为书签
POST 请求对数据长度没有要求
// 主过程
function startXMLHttp(){
createXMLHttp();
var send_string="name="+documentgetElementById("name")value;
send_string= encodeURI(send_string)
xmlHttponreadystatechange =stataHandler;
xmlHttpopen("post","ajax_showphp",true);
// xmlHttpsetRequestHeader("cache-control","no-cache");
// 以下两句用POST 时不可少,LZ 参考下
xmlHttpsetRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlHttpsend(send_string); //发送
}
第一个问题:先搞清ajax的底层通信形式,ajax发出请求后等待回复,也就是监听某个信息端口,服务器接到请求后,发送结果,也就是向某个端口写信息,所以,不管在形式上编程上有什么不同,都是向这个ajax所在地的信息端口输出信息。
第二个问题,response==0是将response转换为int类型再对比,肯定正确,而response肯定不等于"0",因为outprintln("0"),println这个方法就是在输出的字符串后加一个回车,你可以将response转换为ascii码看看是不是这样。
其实就是send request 的缩写,向服务器发送请求,但是不带有数据发送过去,一般在get方式发送时候多使用这个方式。
参数给url 例如:var url =" LianxiServletphone=" +myphone;
这样就send(null)
var url =" LianxiServletphone=" ;
这样就send(myphone)
如果url有很多个参数 send中就用逗号隔开
0条评论