经典面试题之get和post区别(入门篇)

1.标准答案

  • GET在浏览器回退时是无害的,而POST会再次提交请求。

  • GET产生的URL地址可以被Bookmark,而POST不可以。

  • GET请求会被浏览器主动cache,而POST不会,除非手动设置。

  • GET请求只能进行url编码,而POST支持多种编码方式。

  • GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。

  • GET请求在URL中传送的参数是有长度限制的,而POST么有。

  • 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。

  • GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。

  • GET参数通过URL传递,POST放在Request body中。

2.博主理解

上面的这些看起来很多,背给面试官的时候又显得太过于官方,其实大体也就是这几个方面:

GET参数放在URL中,并且只请求一次;而POST放在Request body中,请求两次。

所以GET只能进行URL编码了,参数就会被完整保留历史记录了,长度就有限了,数据类型只能是ASCLL字符了,不安全不能传递敏感信息了也就相继产生

剩下也就记一下POST回退时会再次请求,GET的URL地址可以被记录书签,GET会被主动保存缓存等。

3.题外话

这些只是浅显的入门,并非完全理解深入,如果想要深入了解还应该多查多看



你可能感兴趣的:(Linux)