javascript - 如何防止通过直接输入浏览器网址栏来查看/下载文本或脚本文件?

标签 javascript ajax html

我在 JSP 文件中使用了一些 java 脚本代码,但由于我不希望客户端看到我的代码,所以我将其放入 codescript.js 文件中,并通过 ajax 包含它,如下所示

$.ajax({
   cache: true,
   dataType: "script",
   url: "codescript.js"
}); 

但是当我直接访问 codescript.js 文件时,任何人都可以猜测它存储在当前目录中。只需在网址栏中输入文件名即可下载我的文件,例如

pathtomysite\codescript.js

有什么方法可以阻止客户端轻松访问我的 java 脚本文件。

最佳答案

您可以通过测试 Referer header 来拒绝直接访问。这基本上应该拒绝直接访问,但它可以被欺骗。

RewriteCond "%{HTTP_REFERER}" "!www.example.com" [NC]
RewriteRule "\.(js)$" -   [F]

关于javascript - 如何防止通过直接输入浏览器网址栏来查看/下载文本或脚本文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35653257/

相关文章:

javascript - 使用 JQUERY 立即将选中的复选框值从一个复选框复制到另一个复选框

jquery - 将整个页面替换为 ajax 加载页面的内容

html - 我无法在辅助方法中调整 html.EditorFor 框的宽度

javascript - 如何将所有行读入第三级 jqgrid/subGrid。请看图片

javascript - 比较数组图像和值,如果可以提交表单

javascript - 嵌入可自动下载的 pdf

javascript - 无法向访客发送新日历事件的通知 - Google Apps

javascript - 立即访问对象的属性

javascript - 更好地理解 Promise.prototype.then

javascript - 如何使用 ajax 发布复杂的 url 请求