为JavaScript程序添加客户端不可见的注释
作者:李战 来源:软件真谛 发布时间:2008-05-31 08:02:00
标签:注释,javascript,客户端
在ASP.net页面中,我们编写JavaScript脚本附加有注释时,这些注释也往往会随JavaScript脚本一起送到客户端。访问者只要在浏览器里查看HTML源文件就可以看到这些注释。
当然,我们可以选择放弃使用注释。然而,有些JavaScript代码又是必须有注释的。比如有些代码故意写得很乱,以用来迷惑恶意攻击者。如果没有注释,恐怕也把自己给迷惑进去了,但加了注释,岂不又给了攻击者一个指路标。
有没有办法让JavaScript的注释在客户端不可见呢?
答案很简单,就是:JavaScript注释 + 服务器端注释!
行注释写法:
//<%-- 这里写行注释 --%>
块注释写法:
/*<%--
这里写注释语句块,
多行都行。
--%>*/
我们自己的开发人员可以阅读到完整的注释,而编译后的ASP.NET页面将忽略掉<%--到--%>中的注释部分,恶意攻击者在客户端就看不到这些注释了。
他只能看到:// 或者 /**/ 然后,然后立马晕倒!
您可能已经早知道这一诀窍,不过俺是自己想到的。菜鸟并非总吃素,偶尔啄到小虫子。


猜你喜欢
- 最近,接手的项目里,提供的数据文件格式简直让人看不下去,使用pandas打不开
- 一、vscode插件介绍在我们演示插值表达式之前,我们先安装这一个VScode给我们提供的插件,它可以将我们书写好的网页通过服务端口的方式进
- 在查询语句中使用 NOLOCK 和 READPAST 处理一个数据库死锁的异常时候,其中一个建议就是使用 NOLOCK 或者 READPAS
- 前言本文主要介绍的是关于Django验证码生成与使用的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍:方法如下:1、基于PIL生
- Mysql慢查询解释MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过
- 如下所示:import requests url='http://www.baidu.com'#下面使用requests.r
- 页面缓存e.g.@cache_page(time_out, key_prefix=key_prefix)def my_view(): ...
- 用实例来说明 import 的作用吧。创建以下包结构。一个文件夹 cookFish/,下面包含两个文件, __init__.py和cookB
- Oracle数据安全面面观 作者:づ★sl战神 随着计算机的普及以及网络的发展,数据库已经不再仅仅是那些程序员所专有的话题。而Oracle数
- 前言一般的反爬措施是在多次请求之间增加随机的间隔时间,即设置一定的延时。但如果请求后存在缓存,就可以省略设置延迟,这样一定程度地缩短了爬虫程
- 前言一首歌热门了,参与评论的人也很多,这时无论好坏评论都来了,没有人控评得话,指不定乱七八糟但是自己有喜欢看评论,不想影响好心情,想看看精彩
- Python 实现tuple和list的转换1.list列表转换为tuple元组temp_list = [1,2,3,4,5]print(t
- 1.效果2.环境1.pytorch2.visdom3.python3.53.用到的代码# coding:utf8import torchfr
- 代码如下:<% dim objconn,connstr Set objconn =&
- 1、目录操作1.1、获取当前目录# coding:utf-8import os# 获取当前工作目录(绝对路径)print(os.getcwd
- 为什么要使用滤波消除图像中的噪声成分叫作图像的平滑化或滤波操作。信号或图像的能量大部分集中在幅度谱的低频和中频段是很常见的,而在较高频段,感
- 项目需要,需要自动生成PDF测试报告。经过对比之后,选择使用了reportlab模块。 项目背景:开发一个测试平台,供测试维护测试用例,执行
- 学习Python的过程中,我们会遇到Excel的读写问题。这时,我们可以使用xlwt模块将数据写入Excel表格中,使用xlrd模块从Exc
- 1、使用函数shutil.make_archive()创建归档文件,并返回归档后的名称。import shutilpath_1 = r
- 本文实例讲述了js+php实现静态页面实时调用用户登陆状态的方法。分享给大家供大家参考。具体分析如下:在程序开发中,经常会把页面做成html