2013-07-31 52 views
2

是否有可能讓客戶端加載JavaScript,但仍然被拒絕訪問它存儲的頁面?可能使JavaScript「可加載」,但不可見/可讀?

+2

我不這麼認爲,最好的辦法是混淆它作爲最好的,你可以,如果你不想來源是公開查看,幹練。 (他們也爲這個工具,搜索JavaScript混淆器) –

+6

使用服務器端代碼的東西。 – Gray

回答

5

這是不可能的。由於Javascript是客戶端,因此無法阻止客戶端查看您的源,而不會阻止他們使用它。

Minification and obfuscation可以讓你更難發現你的代碼中發生了什麼,但有人可以使用像jsbeautifier這樣的工具來阻止你的努力。

你可以使用許可證來保護自己(你應該爲自己和他人做的),但是你不能像服務器端語言那樣「鎖定」JS。

1

不可以讓客戶端運行JavaScript文件,但他們無法讀取代碼。

JavaScript是一種客戶端編碼語言。這意味着整個文件必須傳送到執行它的客戶端瀏覽器。

將文件提供給客戶端後,他們可以訪問代碼並可以讀取您向其提供的所有內容。

您可以'混淆'和'最小化'您的.js文件。這仍然會以計算機可讀的方式將所有的代碼傳遞給客戶端,但是對於人來說這將是難以閱讀的格式。

1

正如尼克所建議的,JS文件是客戶端,您不能限制它從最終用戶查看。開發人員可以將其最小化,所有非常重要的數據都可以移至服務器端,如servlet和實現類。 此外,最好不要從javaScript中訪問任何cookie作爲安全問題。