发表于: 2017-06-25 23:40:34
1 1090
get 与 post的区别?application json 与form表单的区别?
1.背景介绍
HTTP的来历:
超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人Ted Nelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为了HTTP超文本传输协议标准架构的发展根基。Ted Nelson组织协调万维网协会(World Wide Web Consortium)和互联网工程工作小组(Internet Engineering Task Force )共同合作研究,最终发布了一系列的RFC,其中著名的RFC 2616定义了HTTP 1.1。
HTTP是一种基于请求响应的通信协议,客户端对服务器发出一个取得资源的请求,服务器将要求的资源响应给客户端,每次的联结只作一次请求/响应,并且响应之后就不会记得客户端的信息,更不会去维护于客户端有关的状态,基于它的这种特性,http又被称之为无状态的通信协议
URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查 ,改 ,增 ,删 4个操作。到这里,大家应该有个大概的了解了,GET一般用于获取/查询 资源信息,而POST一般用于更新 资源信息
什么是rest风格? restful风格,就是一种面向资源服务的API设计方式,它不是规范,不是标准,它一种设计模式。说简单一点,就是它纯粹面向资源,面向服务的思想,目前J2EE6的JAX-RS就是这种rest风格实现的新技术。 资源是由URI来指定。 对资源的操作包括获取创建、修改和删除资源,这些操作正好对应HTTP协议提供的GET、POST、PUT和DELETE方法 通过操作资源的表现形式来操作资源。 资源的表现形式则是XML或者HTML,取决于读者是机器还是人,是消费web服务的客户软件还是web浏览器。当然也可以是任何其他的格式。 get 与 post的区别? 1.get请求 get请求,顾名思义,就是向服务器取得指定的资源,在发出get请求时必须一并告诉服务器所请求资源的URL,以及一些标头信息 2.post请求 POST请求,顾名思义,就是在请求的时候发布信息给服务器,对于大量或复杂的信息发送,基本都会采用POST来进行发送 post和get之间的差别? application/json与form表单? 参考文献一:http请求 参考文献二:get和post的区别 参考文献四:码迷之原型form表单post数据的两种方式 1,到底该如何选用post和get? 2,还有其他form表单的提交方式吗? 3,如何看待post比get安全性更高呢?2.知识剖析
3.常见问题
4.解决方案
get是把参数数据队列加到提交表单的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
因为get设计成传输小数据,而且最好是不修改服务器的数据,所以浏览器一般都在地址栏里面可以看到,但post一般都用来传递大数据,或比较隐私的数据,所以在地址栏看不到。
3. GET对数据进行查询,POST主要对数据进行增删改!简单说,GET是只读,POST是写。5.编码实战
6.扩展思考
$('#signIn').click(
//点击登录按钮触发的函数:获取服务器返回的信息
function () {
$.post(
'/carrots-admin-ajax/a/login', {
name:$("#name").val(),
pwd:$("#password").val(),
}
, function (value) {
//回调函数
var a = JSON.parse(value);
if (a.code == 0) {
alert(a.message)
} else {
alert(a.message)
}
if (a.message == 'success') {
$state.go('pageTab')
}
}
)
xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if(xhr.readyState == 4) {
//服务器已成功接收数据
if (xhr.status >= 200 && xhr.status < 300 ) {
console.log(xhr.responseText);
var a = JSON.parse(xhr.responseText);
console.log(a.message);
$("#hint").text(a.message);
if(a.code==0){
window.location.href = "index.html";
}
}
}
};
xhr.open("post","/carrots-admin-ajax/a/login",true);
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded;charset=UTF-8');
xhr.send("name="+na+"&pwd="+pw);
7.参考文献
8.更多讨论
评论