ajax相关知识点、get请求和post请求的区别

一、完整的url由如下几部分组成:

scheme:

scheme: 通信协议,常用的有:http/ftp

host: 主机,服务器(计算机)域名或IP地址

port:端口,整数,可选,省略时使用默认端口,http的默认端口是80

path: 路径,由零或多个“/”符号隔开的字符,一般用来表示主机的一个目录或者文件地址

query: 查询,可选,用于给动态网页(如使用CGI、ISAPI、PHP/JSP/ASP/ASP.NET等技术制作的网页)传递参数,用“&”符号隔开,每个参数的名和值用“=”符号隔开

fragment: 信息片断,字符串,用于指定网络资源中的片断。例如一个网页中有多个名词解释,可使用frgment直接定位到某一名词解释

二、get请求和post请求的区别:

1、get 请求没有请求头,post 请求要有请求头,请求会带上 content-type 告诉服务器 post 过去的数据格式和 url 的参数的数据一样

2、post 发送的数据在请求体中,用户看不到;get 发送的数据在地址栏中,用户能看到,不安全。

3、涉及隐私数据的时候用 post 请求比较安全,发送大量数据的时候用 post,发送少量数据用get。

三、XMLHttpRequest 返回值类型有xml和json

js解析 xml 格式

1、根据xml文本内容创建xml对象

function createXml(data){

if(!data){

return null;

}

var xml = null;

try{

xml = new ActiveXObject("Microsoft.XMLDOM");

xml.loadXML(data);

}catch(e){

try{

xml = (new DOMParser()).parseFromString(data)

}catch(e){

return null;

}

}

2、获取元素节点的文本内容

function getNodeText(node){

if(window.ActiveXObject){

return node.text;

}else{

if(node.nodeType = 1){

return node.textContent;

}

}

}

3、获取元素的属性

function getNodeAttribute(node,attrName){

if(window.ActiveXObject){

return node.getAttributeNode(attrName);

}else{

if(node.nodeType == 1){

return node.attributes[attrName]

}else{

return undefined;

}

}

}

try { 这里的代码有问题,则会跳到catch中执行catch里的代码 } catch(e) { 代码 }

try {代码} catch(e) {代码} 相当于 if( 条件){代码} else{ 代码 } 可以嵌套

相关推荐