【Asp.net精品源码栏目提醒】:网学会员--在 Asp.net精品源码编辑为广大网友搜集整理了:WEB开发基本原则 - 其它资料绩等信息,祝愿广大网友取得需要的信息,参考学习。
Web开发的一些基本原则 最小权限原则。
只允许用户做,而不是“不允许用户做” 浏览器查看的是服务端代码的执行输出的文本,除非服务器有漏 洞,否则浏览者无法查看服务端的aspx、cs代码,目标另存为也 是保存的aspx的执行结果,而看不到aspx的源代码。
js、html是 被输出到浏览器上执行的,因此无法禁止浏览者查看js、html, 只能增加查看的难度或者把代码混淆,因为代码就是响应返回给 浏览器的。
C代码是运行在服务器端的,JS代码是运行在浏览器客户端的 能在浏览器端完成的事情,就不要到服务端去做。
客户端是不可信的。
Web开发原则1 C代码是运行在服务器端的,JS代码是运行在浏览器客户端的 按钮确认提交的实现在asp:Button的OnClientClick中写。
。
OnClientClick和OnClick的区别:鸠占鹊巢的OnClick 代码是运行在浏览器端的,和服务器端没有关系。
在服务器端“弹出消息窗口” context.Response.Write 明白 为什么即可。
并不是真的是在服务器端运行的,只是生成了JavaScript代码到浏览器端,浏览器会在 解析文档的时候运行alert,不推荐用这种写法,读懂即可,推荐用后面讲的 RegisterClientStartupScript。
只是渲染到浏览器端,所以并不会得到对话框关闭服务端 的代码才会执行下去(在context.Response.Write 后设置断点) 对于服务器端的代码来说,生成一堆HTML代码就是一堆字符串,没有任何意义,只有 到了浏览器端执行才有意义。
Web开发原则1 案例1、在项目中添加对System.Windows.Forms的引用,然后 MessageBox.ShowHello,用CassiniDev.exe启动测试程序让学生们远程测试。
证 明C代码是运行在服务器端的。
127.0.0.1是回环地址(LoopBack),就是表示通过回环地址访问本机,哪怕是本机外 网地址也访问不了。
localhost就是127.0.0.1别名。
是无法在外部访问。
0.0.0.0 任意IP(Any IP),不用写死绑定的IP了,通过任何一块网卡都可以访问网络 程序。
案例2、伟大的
ASP.Net,可以在访问者磁盘中创建木马文件 File.WriteAllTextc:/muma.exe 木马葵花点穴手降龙十八掌熊猫烧香 用CassiniDev.exe启动测试程序让学生们远程测试(VS内置的服务器不能远程访问) 。
exe生成到了服务器的磁盘中,而不是访问者的磁盘中,因为C代码是运行在服务 器中的,而不是浏览器中的,浏览器得到的只有返回的HTML内容。
案例3、开两个页面分别访问点击自增1的界面,互不影响。
因为状态是保存在页面的 ViewState中的。
Web开发原则2 能在浏览器端完成的事情,就不要到服务端去做。
按钮隐藏一个控件就不要写服务端代码,在客户端用JavaScript 、dom来操作就可以。
比如要操作数据库,显然是在浏览器端做 不到的,这时候就要写服务端代码。
校验用户名、密码这样的操 作可以放到浏览器端(用户名、密码是写死的),技术上可以, 但是这样安全性太差,因此必须放到服务器端。
Web开发原则3 客户端是不可信的。
客户端验证不能代替服务端验证 不要把敏感数据、算法写在客户端 不要把机密信息在html中隐藏的方式来保证安全 应该是在机密页面打开之前做权限校验,而不是在一个页面中做校 验,如果正确就倒向机密页面,不正确就不导向。
不要轻信用户提交上来的数据。
XSS客户端验证不能代替服务端验证 设置取款金额不能高于100元 客户端: 服务器端:Label1.Text 取款成功,金额:TextBox1.Text
上一篇:
C#语言01
下一篇:
数学课堂教学的教学效用分析