当前位置: 首页 > news >正文

南宁设计网站设计本家居

南宁设计网站,设计本家居,关键词优化百家号,中国电商排名前十名储存状态的方式 小明的故事说完了#xff0c;该来把上面这一段变成网络的实际案例了。其实在网络世界中问题也是一样的。 前面已经提到过我们会把状态存在 Cookie 里面#xff0c;让 Request 之间能够变得有关联。 假设我们今天要来做一个会员系统#xff0c;那我要怎么知道… 储存状态的方式 小明的故事说完了该来把上面这一段变成网络的实际案例了。其实在网络世界中问题也是一样的。 前面已经提到过我们会把状态存在 Cookie 里面让 Request 之间能够变得有关联。 假设我们今天要来做一个会员系统那我要怎么知道这个 Request 代表的是哪一个会员 最直觉的方式就是登入以后把会员帐号存在 Cookie 里面嘛这样不就知道是谁了吗 可是会碰到的问题就跟寄杯的故事一样Cookie 里的东西是可以被窜改的如果我改成了别人的会员帐号我就可以伪造他的身份登入了 解决方法跟上面寄杯的解法一样 第一个解法就是把 Cookie 里面的内容给加密这样就无法被窜改了。这种方式就称之为 Cookie-based session意思就是你把所有的 Session 状态都存在 Cookie 里面。 所以不要把「用 Cookie 来操作 Session 机制」跟「Cookie-based session」搞混了两者是不一样的。 至于缺点的话前面有提到Cookie 的大小是有限制的超过大小的话浏览器就不帮你存了。 因此当你想存的信息越来越多Cookie 当然也越来越大就有可能超过这个限制。 或者是哪天你的加密方式以及密钥被黑客破解那黑客一样可以伪造任何人的身份。 第二个解法就是透过一个 ID 来辨识身份这个 ID 称之为 Session Identifier简称 Session ID。 Server 只在 Cookie 里面存一个 Session ID其余的状态都存在 Server 那边我习惯把 Server 那边的数据称为 Session Data 其实就是小明笔记本的翻版而已 Session ID 的产生方式跟前面说的一样通常会是一个无法猜测的随机数。 你可能会想说「很难猜是一回事但机率不是 0 啊」对的确是有机率能够猜到但是那个机率太低太低了例如说几千亿分之一之类的。 而且 Server 在你乱猜猜错几次之后就有可能把你 ban 掉不让你继续猜所以没什么问题。 不过这边要特别注意的一点是 Session ID 基本上是种认证不认人的方式也就是说一旦你的 Session ID 被偷走别人就可以伪造你的身份来登录了。而这个 Session ID 通常都是保存在 Cookie 之中。 这就是为什么有些网站发生骇客入侵的情形之后你会突然被注销因为黑客可能偷到一批 Session ID这时候服务器就会把所有 Session 数据全部清空。 以故事来比喻就是把笔记本丢掉买一本新的这样被偷走的那些 Session ID 就没用了而 Server 找不到你的 Session ID自然就无法登入因此把你给注销了。 网站发生问题时客服会要你先把 Cookie 清掉也是类似的道理因为 Cookie 跟状态有关有时候可能程序有一些 Bug把你导到了错误的状态把 Cookie 清空等于把状态清空重新再开始就有可能变得正常。 总结 其实我原本以为我很懂 Cookie 跟 Session但越研究越发现好像不是这么一回事只是我自我感觉良好而已。 但把该看的数据都看完一遍之后再让自己沉淀个几天大致上就能完全理解整个脉络的发展。 Session 是什么就是一种让 Request 变成 Stateful 的机制。以小明的例子来说Session 就是一种让客人之间能互相关联起来的机制。 在故事里面我们用了纸条跟手机里的信息来比喻有多种方式可以达成 Session。 在网络世界中也有很多种方式可以来实作 Session前面介绍过第一种是地址栏第二种就是靠 Cookie而 Cookie 就是存在浏览器里的一些信息。 常见的错误认知是一定要有 Cookie 才能实作 Session这是错误的。 有了 Session 之后会碰到数据被窜改的问题这时候有两种解决方式 一个是 Cookie-based session意思是你照旧把状态存在 Cookie但是加密以后再存。 另一个方法是把状态存在 Server 端靠一个 Session ID 来辨识这个状态你可以存成档案可以存在內存里也可以存在数据库只是实作方式的不同而已但原理都是一样的。 而这个状态储存的地方在口语上也会被称之为「Session」例如说「帮我把 user id 存在 Session 里」或者是「注销记得把 Session 清空」之类的。 所以在实际用法中我认为 Session 之所以不好理解是因为太多地方用到同一个词但却是在指代不同的东西可是又很类似。跟 API 有点像太多地方都用到这个词了。
http://wiki.neutronadmin.com/news/86043/

相关文章:

  • 开平网站建设公司百度如何推广广告
  • 好123上网主页免费利用店铺网站做灰色优化
  • 浙江省建设局网站WordPress适合做电商吗
  • 做视频的网站带模板ICP备案网站服务内容
  • 网站建设收费标准新闻wordpress nana主题
  • 成都网站优化排名目前做网站流行的语言
  • 校园网站建设的维护施工企业安全生产管理体系案例
  • 辽宁省朝阳网站建设邯郸一堆网络科技
  • 网站运营 广告河南专业网站建设
  • 网站开发框架的主要作用上海网站建设lv cn
  • WordPress多站点绑定域名公众号中微网站开发
  • 门户网站建设汇报网站运营编辑做什么的
  • 购买网站域名 空间wordpress分类归档不科学
  • 购物建设网站费用网页布局网站
  • 佛山网站建设有限公司找别人做网站要注意什么
  • 中国制造网官方网站首页前端刚毕业开多少工资
  • 高端网站建设软件开发个人网站推荐
  • 自己做网站有什么意义网站开发转型
  • 上海浦东设计网站建设网站建设策划书范本
  • 杭州公司建站模板工作室主题网站模板
  • 站长工具a级北京餐饮品牌设计公司
  • 网站开发初学wordpress后台经常504
  • 小何自助建站湖南二维码标签报价
  • 好一点的网站建设公司如何自己建网址
  • 长春门户网站建设北京软件外包公司排行榜
  • 天津做公司网站阿里云网站商城建设
  • 找人做网站如何担保快速做网站关键词排名
  • WordPress资讯站点源码在线设计公司logo图标
  • 温州中小企业网站建设自己编写网站
  • 国外网站建设品牌wordpress企业中文模板