legend3---16、网站的安全性问题

一、总结

一句话总结:

通过客户端传递参数的方式也是有些危险,需要注意
单纯的获取数据的方法还好,但是 修改数据库方法一定要同时做前后端验证

1、php的blade语法是可以和vue混用的?

因为解析php在服务端,比解析vue早很多,解析vue在客户端

2、用户数据(比如用戶表的)转化为json之后能够直接传给window对象吗:比如 window.user={!! json_encode($user) !!};?

不能,因为这样,用户的数据就会跑到客户端去了,这种敏感数据的话就太危险了

3、连表的时候如果把用户的信息弄出去就太危险了?

连表的时候不要user.*

4、传参数数据到页面,如果用户改了数据,那么他预期的就是错误的结果,这样对他和正常用户都没有影响?

还是推荐使用页面做数据的参数,也就是可以把数据传到页面,而不用session
只是单纯的获取数据(非敏感),完全就可以将参数传递到客户端

5、对有多种访客权限的页面(比如个人中心页,粉丝页,关注页)都要增加路由参数,而不能只用session?

只用session的话用户在进进退退之间容易出问题
如果对每个多种权限的页面弄一个session的话,就不会出错了

6、每个 多种访客权限的页面 鉴别身份的变量 不要互用?

比如粉丝页 就不能用个人中心页 的鉴别用户身份的变量来鉴别用户的身份

7、监听回车事件(搜索框)?

$("#navbar-search-input").keypress(function(event){if(event.which === 13) { /*要执行的代码*/ }})
<form class="navbar-form navbar-left" role="search">
<div class="form-group">
<input type="text" data-url="{{url('/search_lesson')}}" class="form-control" id="navbar-search-input" placeholder="找课程">
</div>
</form>
{{--找课程回车键事件--}}
<script>
$(function () {
//$("#focus")为获取id为focus的元素
$("#navbar-search-input").keypress(function(event){
if(event.which === 13) {
//点击回车要执行的事件
let search_content=$('#navbar-search-input').val();
let url=$('#navbar-search-input').data('url');
url=url+'/'+trim(search_content);
window.location.href=url;
//console.log(search_content);
console.log(url);
return false;
}
})
});
</script>

8、adminlte模板中的search框默认有事件,如何阻止它默认的事件?

直接在自己的事情里面return false,因为自己的事件在它的事件前,所以可以阻止发生
<form class="navbar-form navbar-left" role="search">
<div class="form-group">
<input type="text" data-url="{{url('/search_lesson')}}" class="form-control" id="navbar-search-input" placeholder="找课程">
</div>
</form>
{{--找课程回车键事件--}}
<script>
$(function () {
//$("#focus")为获取id为focus的元素
$("#navbar-search-input").keypress(function(event){
if(event.which === 13) {
//点击回车要执行的事件
let search_content=$('#navbar-search-input').val();
let url=$('#navbar-search-input').data('url');
url=url+'/'+trim(search_content);
window.location.href=url;
//console.log(search_content);
console.log(url);
return false;
}
})
});
</script>

9、消息的已读和未读如何确定?

如果是自己打开个人中心页,那么当前所有的消息都是已读
可以在获取数据之后将消息置为已读

10、服务端一定要验证了才能操作数据库,不然很容易被客户端发起请求非法操作数据库,比如刷金币?

数据库的话就先查表,缓存的就查是否有这部分缓存数据

二、内容在总结中

 

最新文章

  1. jQuery.Ajax IE8 无效(CORS)
  2. CSS Table Gallery
  3. 通过hexo+NexT构建静态博客
  4. wampServer安装注意
  5. RHEL5.8配置开机自动挂载磁盘
  6. 【C语言入门教程】5.1 函数说明 与 返回值
  7. Python--常见问题解决方案
  8. Web框架之Tornado
  9. JavaScript 的数据类型 相关知识点
  10. tarjan算法求强连通分量
  11. opencv矩阵总结
  12. Debian 环境下安装Tomcat记录
  13. [NOIP2014]解方程
  14. iOS开发基本须要
  15. dedecms(织梦)自定义表单后台显示不全 自定义模型当中添加自定义字段后在后台添加内容后不显示解决方案
  16. Android中java层使用LocalSocket和底层进行通讯
  17. Windows脚本相关
  18. Kali Linux之web安全扫描器skipfish使用
  19. 在Ubuntu 16.04下安装nodejs
  20. Codeforces 1140F Extending Set of Points 线段树 + 按秩合并并查集 (看题解)

热门文章

  1. day14-python之集合函数字符串格式化
  2. ES Client
  3. Linux之python3编译安装
  4. nginx实现fastcgi反向代理
  5. css完结篇
  6. 通过 cross apply 实现函数转换成表并与原表进行关联
  7. [课本]JDBC课程6--使用JDBC的DAO模块化--完成数据库的增删查改_工具类JDBCTools四个(Preparedstatement)功能模块的敲定版
  8. SCPI 语言简介
  9. BUG----spark
  10. js中的数据类型以及转换