客户端向服务器发送请求的方式至少有7种,标准的请求方式有4种:get、post、delete、put。在实际开发过程中常见的请求方式有两种,分别为post、get。两种请求方式都可以由我们自己来定义,在表单的提交当中我们会通过action来定义请求php的路径,而method来定义请求方式。下面我们来比较两种请求方式的区别:
在实现异步请求的步骤分为6步:创建XMLHttpRequest核心对象、通过open(method,url,async)方式创建与服务器之间的连接、send(null/'k1=v1&k2=v2&...' )方式接受服务器端的响应、onreadystatechange监听服务器通信状态的改变、获取服务器端的通信状态readystate、获取服务器端的状态码status。那么步骤当中的区别get方式open中要设置为:xhr.open('GET', 'xx.php?k1=v2&k2=v2&k3=v3',true);并且设置为send(null),但是send不可以省略。但是在post中open步骤中设置为:xhr.open('POST', 'xx.php',true);但是send步骤要设置为xhr.send('k1=v1&k2=v2');并且post请求方式在send与open之间要设立一个请求头部,写法是固定的。xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),如果不设立这个请求头部,那么请求的参数就会发生错误。
简单的看来post请求方式视乎要更加的麻烦,但是在实际开发过程中,我们却往往采用post请求方式。因为get请求方式中客户端所请求的数据会裸露在搜索栏当中,虽然get请求方式更简单但是其安全性并没有post请求方式的安全性高。
后面做补充!