看一段很简单的代码:
login.html
<html>
<head>
<title>Test</title>
<script type="text/javascript" src="jquery-1.3.1.js"></script>
<script type="text/javascript" src="login.js"></script>
</head>
<body>
<form action="loginSuc.html" name="login" method="post">
用户名:<input type="text" name="username" id="username"/>
<input type="button" value="登录" onclick="doSubmit()"/>
</form>
</body>
</html>
login.js
function doSubmit() {
var username = $("#username").val();
if(username == '') {
alert("请输入用户名");
return;
}
document.login.action="loginSuc.html";
document.login.submit();
}
loginSuc.html
<h1>登录成功!</h1>
一个很简单的前端校验用户名的代码,如果这时就不输入用户名肯定会给出错误提示。
此时用Firefox,当然了也要用到firebug.
此时先把Firebug启动,看一下login.html页面的代码如下:
注意红色标记的地方
然后做下面的一段操作,也就是选中type,然后将其改为submit
最后的修改结果如下:
这时候再试试点击登录按钮,出事了,居然登录成功了。
所以不管怎么样,即使前端做了校验,服务器端也必须再做校验,不做校验的情况,
public boolean login(String username) {
// 在这里认为username肯定是不为空的
if("xxx".euqals(username)) {
return true;
}
return false;
}
如上面所写,既然username肯定不为空,那也就不必再做校验了,省去一些操作多好!此时如按照上面的做法,这一步肯定会抛出java.lang.NullPointerException.程序就这么挂了。
所以由以上的操作可以看出,前端做了校验,服务器端是必须要再次做校验,那样才能保证安全,正确!
- 大小: 5 KB
- 大小: 4.8 KB
- 大小: 8.5 KB
- 大小: 16.8 KB
- 大小: 1.6 KB
分享到:
相关推荐
这对于防止无效数据的提交,提升用户体验,以及减少服务器端处理负担具有重要意义。此外,由于该文件包支持即时反馈,用户可以在填写表单时立即得知输入内容是否存在问题,并得到相应的提示信息,这大大提高了交互...
因为服务器接收到的请求不一定来自我们的前端页面,有可能来自别的站点,黑客可以自己做一个表单,把数据提交到我们的服务器(即跨站伪造请求),这样就绕过了前端页面的校验。如果对HTTP协议比较熟,甚至还可以在...
悟空CRM采用全新的前后端分离模式,本仓库代码中已集成前端vue打包后文件,可免去打包操作 如需调整前端代码,请单独下载前端代码,前端代码在根目录的ux文件夹中 主要技术栈 后端框架:ThinkPHP 5.0.2 前端MVVM...
1. 在服务器端生成随机字符和对应的图片:使用Kaptcha库可以方便地生成验证码图片,并且支持配置多种参数(如字体、噪点、边框等)以满足个性化需求。 2. 将随机字符保存到Session中:可以通过将随机字符保存到...
MineboatX项目是项目的服务器端实现,可以作为单独的项目使用。 Mineboat是一个前一级分离的框架,目的是实现一个非分布式的简单框架。 Mineboat根据这样一个需求:当需要建造一个简单的网站的时候,希望能够快速...
安全的下载机制,断点下载,权限校验,他人拿到了下载地址也无法下载您的文件 支持视频音频播放,进度条拖拽,倍速播放 拥有回收站功能,妈妈再也不怕我误删数据了 高效的垃圾回收机制 未来支持 文件夹上传 文件在线...
秒杀一般都是特定的商品还有页面模板,现在一般都是前后端分离的,页面一般都是不会经过后端的,但是前端也要自己的服务器啊,那就把能提前放入 cdn服务器 的东西都放进去,反正把所有能提升效率的步骤都做一下,...
商品详情显示,用户点击某个商品时,将相应商品的id发送到后台服务器端, 根据id获取该商品详细信息,返回给前端页面展示。 a.购物车添加,用户在前台界面点击商品详情页面内的购买按钮后跳转至购物车确认界面 b....
但一个不可忽视的事实是,服务器渲染的页面到底是由前端开发者来完成,还是由服务器开发者来完成?其实都不太合适。现在已经没有多少前端开发者是了解这些服务端模板语言的,而服务器开发者本身是不太擅长开发页面的...
安全的下载机制,断点下载,权限校验,他人拿到了下载地址也无法下载您的文件 支持视频音频播放,进度条拖拽,倍速播放 拥有回收站功能,妈妈再也不怕我误删数据了 高效的垃圾回收机制 未来支持 文件夹上传 文件在线...
本次项目主要以本学期所学内容为基础,采用servlet+jsp+jdbc的技术以及mvc模式进行项目开发,本次开发的内容主要以实现CRUD核心功能为主的教务管理系统,分为学生端和教师端,前端采用jquery进行数据传输以及处理,...
1、spring、springMVC、mybatis整合项目,使用IDEA开发,Tomcat服务器,MySQL...前后端完整,前端为jsp页面。 ps:项目可直接使用IDEA打开,包括源码和编译后文件。另有.sql文件含有本项目所需创建数据库和表的代码。
代码中已集成前端vue打包后文件,可免去打包操作: 以本地(phpstudy集成环境)搭建举例: 下载代码,在服务器根目录(www目录)下创建文件夹,并放置代码; 浏览器访问 http://localhost/文件夹目录/index....
只需要在服务器端进行配置就可以了,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络...
那么服务器端要如何进行鉴权呢? Json Web Token 简称为 JWT,它定义了一种用于简洁、自包含的用于通信双方之间以 JSON 对象的形式安全传递信息的方法。JWT 可以使用 HMAC 算法或者是 RSA 的公钥密钥对进行签名。 说...
实现前后端分离,通过token进行数据交互,前端再也不用关注后端技术 支持结合ELK实时日志分析系统,方便日志查询,问题排查,上线检查 灵活的权限控制,可控制到页面和按钮,满足绝大部分的权限需求 可在线生成vue、...
前端:bootstrap 后端:SSM 数据库:mysql 服务器:tomcat8.0 使用maven 使用ajax来进行前后端的交互 配置过滤器,不可以通过请求地址直接访问页面 分页使用mybatis的分页插件 增加和修改功能的页面可以使用...
加密与解密 先介绍一下关于服务端用户名跟密码的存储状态,我们知道当前端在注册一个新用户时,会在表单内填入用户名和密码,并通过post请求提交到服务器,服务器再把...这张表通常会被命名为users。 ...直接存?... ... ...
但一个不可忽视的事实是,服务器渲染的页面到底是由前端开发者来完成,还是由服务器开发者来完成?其实都不太合适。现在已经没有多少前端开发者是了解这些服务端模板语言的,而服务器开发者本身是不太擅长开发页面的...