[英]How to serve html in express.js that references js file from server and run it on client side?
[英]How prevent a user from accessing a client side html file with express?
我正在編寫“待辦事項列表”應用程序。 在我的node.js代碼中,我使用express並將其訪問名為Client的文件夾:
var app = express();
app.use(express.static(__dirname + "/Client"));
在我的客戶文件夾中是以下內容:
codeJS.js
homepage.html
Todolistpage.html
style.css
logo.jpg
如何防止用戶鍵入localhost:3000 / Todolistpage.html時無法查看我的Todolistpage.html文件(而不從我的客戶文件夾中刪除Todolistpage.html )?
(理想情況下,稍后,我嘗試僅允許登錄的用戶查看它)
如果您不靜態提供文件並將其作為視圖邏輯的一部分進行處理,則可能會更容易。 因此,您只需將其從公共目錄中刪除,然后使用app.get()
或router.get()
中間件分別處理即可。 您是否有理由需要靜態服務?
您可以執行以下操作:
var app = express();
app.get('/Todolistpage.html, function(req, res) {
return res.status(401).end();
});
app.use(express.static(__dirname + '/Client');
這並不理想,因為您必須在文件名更改時隨時進行更改,並且必須針對每個文件單獨進行更改。
您還可以使用其他目錄/secure
和一些用於用戶auth的中間件,例如:
app.use('/secure', someAuth, express.static(__dirname + '/secure'));
甚至...
app.use('/secure', someAuth, express.static(__dirname + '/Client/secure'));
但這讓我感到困惑。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.