发表于: 2017-04-02 18:31:10
1 1197
今日完成的事情:
给任务三写翻牌页和法官日志页面,看js传值的几种方法。
明天计划的事情:
打开任务2的项目,找到玩家配比页面的杀人和平民分配的数据,传到新的页面,查看玩家身份,为页面的查看身份按钮/隐藏并传递给下一号按钮添加点击事件,学习如何根据需要显示和隐藏视图,用变量保存查看状态和当前查看到几号身份。
遇到的问题:
看了传值的资料,但是对于要选哪种方式进行传值完全没有概念。
收获:
1、URL地址传递参数:把参数值附在url后面传到后台,url和参数之间用"?"隔开多个参数之间用"&"符号连接。URL地址方法可以很方便的在页面之间切换并传递参数,无需额外的处理,基于正常情况下不会产生性能损失。
URL地址传递参数的几个特点:
1)URL地址法简洁易用,可同时传递多个字符型参数;
2)URL地址法可以很方便的在页面之间切换并传递参数,无需额外的处理,基于正常情况比较不会性能损失;
3)URL传递参数长度受限,最大为2K;
4)URL只能传递字符型参数,传递中文时,由于发送页面和接收页面的字符编码方式不一样而导致参数解析处理错误,参数包含中文时可能出现乱码或者参数接收错误;
5)信息泄露:URL地址在客户端可见,导致会泄露信息,可能被黑客用来攻击系统。
2、用COOKIE传递参数:cookie是存储在浏览器上的一小段数据,用来记录某些当页面关闭或者刷新后仍然需要记录的信息。Cookie 一般有两个作用:第一个作用是识别用户身份,第二个作用是记录历史。
cookie的一些特点:
1)cookie可以使用 js 在浏览器直接设置(用于记录不敏感信息,如用户名), 也可以在服务端通使用 HTTP 协议规定的 set-cookie 来让浏览器种下cookie,这是最常见的做法。
2)每次网络请求 Request headers 中都会带上cookie。所以如果 cookie 太多太大对传输效率会有影响。
3)一般浏览器存储cookie 最大容量为4k,所以大量数据不要存到cookie。
3、LOCALSTROAGE和SESSIONSTORAGE:
sessionStorage:用于本地存储一个会话(session)中的数据,这些数据只有在同一个会话中的页面才能访问并且当会话结束后数据也随之销毁。因此sessionStorage不是一种持久化的本地存储,仅仅是会话级别的存储。
localStorage:HTML5本地存储web storage特性的API之一,用于将大量数据(最大5M)保存在浏览器中。
1)保存后数据永远存在不会失效过期,除非用 js手动清除。
2)不参与网络传输。
3)一般用于性能优化,可以保存图片、js、css、html 模板、大量数据。
评论