2014-10-26 89 views
1

我有一個角度的應用程序,我連接和縮小所有的angular.js文件,所以用戶更難以「借」我的代碼。我想限制訪問我的角度目錄,這是在web根目錄。我嘗試以下,但它不工作:如何限制對web根目錄內的目錄的訪問?

app.get('/angular/', function(req, res) { 
    res.redirect('/'); 
}); 

的問題是,任何人都可以進入mydomain.com/angular/controllers.js,例如,看看controllers.js文件。我有點驚訝,因爲我認爲我在路徑中指定了在嘗試訪問角度目錄內的任何文件時重定向用戶。我究竟做錯了什麼?

+0

推測你的'編譯'代碼是在例如/上市?如果是這樣,請不要包含到/ angular的路由 – 2014-10-26 19:50:59

+0

我沒有明確提供到''/ angular''的路由。但是,我仍然可以訪問該目錄並查看其中的任何文件。 – 2014-10-26 19:53:17

+0

你的文件需要可用,以便瀏覽器可以解釋它們,如果這是你想要做的事情,就沒有辦法阻止訪問並保持你的應用程序運行。 – 2014-10-26 19:57:10

回答

0

用戶只需打開其瀏覽器的網絡檢查器,並在代碼運行之後閱讀代碼,這樣做不會解決您的問題。

您應該將代碼縮小並將代碼隱藏到一個包中?我使用browserify來做這個,就像你在這個項目中看到的那樣https://github.com/evanshortiss/cordova-angular-browserify。然後你可以運行通過uglify綁定的代碼。

如果你不想使用browserify,你可以找到另一種方式,比如閱讀html文件中的JS文件,然後將它們全部讀取並以正確的順序將它們轉儲到一個.js文件中。

0

由於有美化的解決方案,Minify或uglify不可能是好的解決方案!

您可以將您的私人文件/文件夾移動到不可http訪問的目錄中。

希望這會有所幫助! :)