02 基础篇-URL补充

摘要:①补充http与https的概念、区别,②补充http/https的请求方法post和get

一、http与https

1. HTTP和HTTPS的基本概念

HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。
HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。

HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。

2. HTTP与HTTPS的区别

HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。简单来说,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。
HTTPS和HTTP的区别主要如下:

  • https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
  • http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
  • http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
  • http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

二、HTTP 请求方法:GET 和 POST

在客户机和服务器之间进行请求-响应时,两种最常被用到的方法是:GETPOST

  • GET - 从指定的资源请求数据。
  • POST - 向指定的资源提交要被处理的数据。

1. GET 方法

请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的,顾名思义就是get提交的信息直接反映在链接上,如:

https://www.discuz.net/member.php?mod=logging&action=login

上面链接中,mod=loggingaction=login就是https://www.discuz.net:443/member.php通过GET所要提交的值。

有关 GET 请求的其他一些注释:

  • GET 请求可被缓存
  • GET 请求保留在浏览器历史记录中
  • GET 请求可被收藏为书签
  • GET 请求不应在处理敏感数据时使用
  • GET 请求有长度限制
  • GET 请求只应当用于取回数据

2. POST 方法

请注意,查询字符串(名称/值对)是在 POST 请求的 HTTP 消息主体中发送的,意思就是所提交的信息你宏观上是看不到的,例如:

https://www.discuz.net/member.php?mod=logging&action=login&loginsubmit=yes&loginhash=loginhash&inajax=1

上面这个地址是个登录地址,你用get访问这个地址时,是会出错的,当你在访问的时候,多提交一下参数是,才会有响应

formhash=formhash值&referer=https%3A%2F%2Fwww.discuz.net%2F.%2F&loginfield=username&username=账号&password=密码&questionid=0&answer=&seccodehash=cS&seccodemodid=member%3A%3Alogging&seccodeverify=验证码

3 下面的表格比较了两种 HTTP 方法:GET 和 POST。

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中。


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文整理自MIN飞翔博客 [1] 1. 概念 协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或...
    HoyaWhite阅读 2,714评论 2 20
  • Web 页面的实现 Web 基于 HTTP 协议通信 客户端(Client)的 Web 浏览器从 Web 服务器端...
    毛圈阅读 1,157评论 0 2
  • HTTP 图解笔记 一 .简单了解 1.1HTTP背景 1.1.1 HTTP的诞生 1989 年 3 月,互联网还...
    Aaron96阅读 1,069评论 0 4
  • 2019.3.10 周日 雾转晴 今天带娃去了海军博物馆,记得我第一次去是小学的时候,冬天,大队辅导员带我们这帮护...
    小娘子Candy阅读 347评论 0 2
  • sql2012版本之前分页功能 【语法1】 select top 【每页记录数】 * from 【表名】 wher...
    liuyuedeyu阅读 1,965评论 0 0