Node.js không được thiết kế để chạy trực tiếp các tệp HTML. Node.js thường được sử dụng để chạy mã JavaScript phía máy chủ, không phải để mở trực tiếp các tệp HTML trong trình duyệt.
Để mở file HTML trong trình duyệt, bạn có thể sử dụng một máy chủ HTTP đơn giản. Dưới đây là một ví dụ về cách sử dụng Node.js để mở file index.html bằng máy chủ HTTP:
- Tạo file index.html trong thư mục đó và thêm nội dung HTML mong muốn vào file đó.
- Trong file chính (như tên ví dụ phổ biến là app.js hoặc server.js), thêm mã sau:
const http = require('http');
const fs = require('fs');
const path = require('path');
const server = http.createServer((req, res) => {
const filePath = path.join(__dirname, 'index.html');
fs.readFile(filePath, 'utf-8', (err, content) => {
if (err) {
res.writeHead(500);
res.end('Internal Server Error');
} else {
res.writeHead(200, { 'Content-Type': 'text/html' });
res.end(content);
}
});
});
server.listen(3000, () => {
console.log('Server is running on http://localhost:3000');
});
- Chạy lệnh
node app.js
trong terminal. - Mở trình duyệt web và truy cập vào http://localhost:3000 để xem file index.html được hiển thị trong trình duyệt.
Lưu ý rằng để mở file HTML trong trình duyệt, bạn cần một máy chủ HTTP như trong ví dụ trên. Node.js chỉ đóng vai trò là máy chủ HTTP để phục vụ nội dung của file HTML.
Vietnam Pham – Click Digital
- Nếu bạn muốn đầu tư vào các công ty quảng cáo blockchain, chỉ cần MUA token Saigon (SGN) trên Pancakeswap: https://t.co/KJbk71cFe8 (đừng lo lắng về tính thanh khoản, mà hãy trở thành nhà đầu tư sớm)
- Được hỗ trợ bởi Công ty Click Digital
- Nâng cao kiến thức về blockchain
- Địa chỉ token trên mạng BSC: 0xa29c5da6673fd66e96065f44da94e351a3e2af65
- Twitter: https://twitter.com/SaigonSGN135
- Staking SGN: http://135web.net
- If you’d like to invest in blockchain advertising companies, just BUY token Saigon (SGN) on Pancakeswap: https://t.co/KJbk71cFe8 (do not worry about low liquidity, be the early investor)
- Backed by Click Digital Company
- Enhancing blockchain knowledge
- BSC address: 0xa29c5da6673fd66e96065f44da94e351a3e2af65
- Twitter: https://twitter.com/SaigonSGN135
- Staking SGN: http://135web.net
Digital Marketing Specialist