get 与 post的区别?application json 与

2017-06-13  本文已影响322人  a1e6062f15ce

大家好,我是IT修真院北京分院第20期的学员王野,一枚正直纯洁善良的程序员

今天给大家分享一下,修真院官网JS任务4,深度思考中的知识点——http请求方式的区别

一、背景介绍

get 和 post是HTTP中请求数据的方法;application json 与form表单是HTTP中传输文件的类型,所以要了解其中的区别,要先了解HTTP 协议格式 和 HTTP Header

二、知识剖析

HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.1,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。

HTTP请求数据:

请求数据

HTTP响应数据:

相应数据

三、常见问题

get 与 post的区别?

1.GET请求的数据会附在URL之后,以?分割URL和传输数据,参数之间以&相连,

    POST把提交的数据则放置在是HTTP包的包体中。

2.GET的长度受限于url的长度,而url的长度限制是特定的浏览器和服务器设置的,理论上GET的长度可以无限长。

3.POST是没有大小限制的,HTTP协议规范也没有进行大小限制,起限制作用的是服务器的处理程序的处理能力

4.在ASP中,服务端获取GET请求参数用Request.QueryString,获取POST请求参数用Request.Form。

5.POST的安全性要比GET的安全性高

application json 与form表单的区别?

瀏覽器默認的提交方式就是表單。首先,Content-Type 被指定为 application/x-www-form-urlencoded,jQuery的Ajax请求默认方式,其次,数据以键值对形式?key1=value1&key2=value2的方式发送到服务器

form形式

application/json用来告诉服务端消息主体是序列化后的 JSON 字符串。由于 JSON 规范的流行,除了低版本 IE 之外的各大浏览器都原生支持 JSON.stringify,服务端语言也都有处理 JSON 的函数,使用 JSON 不会遇上什么麻烦。angular默認的就是json格式。

JSON 格式支持比键值对复杂得多的结构化数据,可以提交层次非常深的数据。

json形式

四、拓展思考

1、post和get的选择?

私密性的信息请求使用post。

查询信息和可以想要通过url分享的信息使用get。

2、application json 和form表单的选择·

json和表单可以根据具体的情况选择,也可以自己设置。


http中 get和post的区别

五、参考文献

ppt链接

视频链接

HTTP协议详解(真的很经典)

四种常见的 POST 提交数据方式 专题

七、更多讨论

如何手动设置数据的格式

大家可以在评论里讨论下哦

------------------------------------------------------------------------------------------------------------------------

上一篇下一篇

猜你喜欢

热点阅读