大发体育娱乐在线-大发体育娱乐官方网站-大发体育娱乐登录网址
做最好的网站

Get请求与Post请求的区别,即使用了

来源:http://www.dfwstonefabricators.com 作者:前端学习 人气:193 发布时间:2019-09-19
摘要:即接纳了 https 也不用通过 query strings 传敏感数据 2017/10/16 · 基础技术 ·HTTPS 本文由 伯乐在线 -xiaoheike翻译,艾凌风校稿。未经许可,禁止转发! 韩语出处:HttpWatch。招待参预翻译组。

即接纳了 https 也不用通过 query strings 传敏感数据

2017/10/16 · 基础技术 · HTTPS

本文由 伯乐在线 - xiaoheike 翻译,艾凌风 校稿。未经许可,禁止转发!
韩语出处:HttpWatch。招待参预翻译组。

劳务器端的 log 将公开记下完整 url;浏览器上的访问历史也会公开记下完整 url;Referrer headers 里也忠实记下完全 url,然后在外人家的 谷歌Analytics 上出示。

我们常常听到的多少个普遍难点是:“URL 中的参数是不是足以安枕无忧地传递到安全网站?”那么些难题日常出现在客商看了 HttpWatch 捕获的 HTTPS 央求后,想清楚还应该有什么人能够看到那些数量。

 

比方说,假使在一个查询中,使用如下安全的 URL 传递密码字符串:

HttpWatch 可以展现安全央求的开始和结果,因为它与浏览器集成,因而它能够在 HTTPS 请求的 SSL 连接对数据加密从前查看数据。图片 1

假诺您选拔互联网嗅探器查看,譬喻 Network Monitor,对于同一个央求,你只可以够查阅加密之后的数目。在数据包追踪中从未可知的网站,题目或内容:

图片 2

你能够信任 HTTPS 伏乞是平安的,只要:

  • 未忽略任何SSL证书警告
  • Web 服务器用于运转 SSL 连接的私钥在 Web 服务器自己之外不可用。

故而,在网络范围,URL 参数是安枕无忧的,但是还也许有部分任何依照 URL 泄漏数据的格局:

  1. URL 存款和储蓄在 Web 服务器日志中–平时每一种央浼的完好 URL 都被寄存在在服务器日志中。那代表 URL 中的任何敏感数据(比方密码)会以公开格局保留在服务器上。以下是接纳查询字符串通过 HTTPS 发送密码时存储在 httpwatch.com 服务器日志中的条约: **二〇〇九-02-20 10:18:27 W3SVC4326 WWW 208.101.31.210 GET /Default.htm password=mypassword 443 … 平常以为即正是在服务器上,积存明文密码平素都不是好主张 2.URLs are stored in the browser history – browsers save URL parameters in their history even if the secure pages themselves are not cached. Here’s the IE history displaying the URL parameter:
  2. URL 存款和储蓄在浏览器历史记录中–固然安全网页自庚子缓存,浏览器也会将 URL 参数保存在其历史记录中。以下是 IE 的历史记录,显示了 URL 的乞求参数:图片 3

借使客户创立书签,查询字符串参数也将被积攒。

  1. URLReferrer 央浼头中被传送–若是五个康宁网页使用财富,举个例子 javascript,图片恐怕剖析服务,URL 将通过 Referrer 乞求头传递到每三个放到对象。不经常,查询字符串参数只怕被传送并存放在第三方站点。在 HttpWatch 中,你能够见到大家的密码字符串正被发送到 Google Analytics图片 4

结论

缓和这几个难题亟待两步:

  • 只有在相对须要的意况下传递敏感数据。一旦客户被认证,最棒使用全数有限生命周期的会话 ID 来标志它们。

运用会话层级的 cookies 传递音讯的独到之处是:

  • 它们不会积累在浏览器历史记录中或磁盘上
  • 它们常常不存款和储蓄在服务器日志中
  • 它们不会传递到嵌入式能源,举例图片或 JavaScript
  • 它们仅适用于恳求它们的域和渠道

以下是大家的在线商铺中,用于识别顾客的 ASP.NET 会话 cookie 示例:

图片 5

请注意,cookie 被限制在域 store.httpwatch.com,而且在浏览器会话截止时过期(即不会蕴藏到磁盘)。

您本来能够通过 HTTPS 传递查询字符串,然则并不是在恐怕出现安全主题素材的场所下使用。举例,你能够安枕而卧的运用它们彰显部分数字或许项目,像 accountview 或者 printpage,但是毫无使用它们传递密码,信用卡号码或然别的不应有精通的音信。

1 赞 收藏 评论

转载自

有关小编:xiaoheike

图片 6

简单介绍还没赶趟写 :) 个人主页 · 作者的篇章 · 10 ·      

图片 7

Get是向服务器发索取多少的一种诉求,而Post是向服务器交由数据的一种央求;

Get是获取消息,实际不是修改音信,类似数据库查询功用雷同,数据不会被改造;

Get诉求的参数会跟在url后举办传递,乞请的多寡会附在UHavalL之后,以?分割USportageL和传输数据,参数之间以&相连,%XX中的XX为该符号以16进制表示的ASCII,要是数量是葡萄牙共和国语字母/数字,原样发送,借使是空格,调换为+,要是是汉语/其余字符,则间接把字符串用BASE64加密。

Get传输的数量有大大小小限制,因为GET是通过U君越L提交数据,那么GET可交付的数据量就跟UTiggoL的长度有直接关系了,不相同的浏览器对U大切诺基L的长短的限制是例外的。

GET央浼的数码会被浏览器缓存起来,客商名和密码将公开出现在UQX56L上,别的人能够查到历史浏览记录,数据不太安全。在服务器端,用Request.QueryString来博取Get情势提交来的数据;

Post恳求则作为http音讯的实际内容发送给web服务器,数据放置在HTML Header内提交,Post未有界定提交的数据。Post比Get安全,当数码是华语或然不灵活的数目,则用get,因为运用get,参数会来得在地点,对于敏感数据和不是华语字符的数额,则用post;

string name=Context.Request.QueryString["name"]

POST表示或者修改造服务器上的能源的哀求,在劳动器端,用Post格局提交的数码只可以用Request.Form来获取.

string name=context.Request.Form["pwd"];

本文由大发体育娱乐在线发布于前端学习,转载请注明出处:Get请求与Post请求的区别,即使用了

关键词:

上一篇:刨根问底HTTP和WebSocket协议

下一篇:没有了

最火资讯