Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

Tôi đang cố gắng tìm hiểu cách tải và hiển thị tệp HTML cơ bản để tôi không phải viết mã như:

response.write('...

blahblahblah

...');

Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

Nyedidikeke

6.2827 Huy hiệu vàng43 Huy hiệu bạc53 Huy hiệu Đồng7 gold badges43 silver badges53 bronze badges

hỏi ngày 18 tháng 1 năm 2011 lúc 3:56Jan 18, 2011 at 3:56

0

Tôi chỉ tìm thấy một cách sử dụng thư viện FS. Tôi không chắc đó là sạch nhất mặc dù.

var http = require('http'),
    fs = require('fs');


fs.readFile('./index.html', function (err, html) {
    if (err) {
        throw err; 
    }       
    http.createServer(function(request, response) {  
        response.writeHeader(200, {"Content-Type": "text/html"});  
        response.write(html);  
        response.end();  
    }).listen(8000);
});

Khái niệm cơ bản chỉ là đọc tệp thô và bán các nội dung. Vẫn mở để các tùy chọn sạch hơn, mặc dù!

Đã trả lời ngày 18 tháng 1 năm 2011 lúc 5:26Jan 18, 2011 at 5:26

Chỉ là một chàng traiJust a guy

5.7124 Huy hiệu vàng20 Huy hiệu bạc25 Huy hiệu Đồng4 gold badges20 silver badges25 bronze badges

8

Sử dụng App.get để nhận tệp HTML. Nó đơn giản!

const express = require('express');
const app = express();

app.get('/', function(request, response){
    response.sendFile('absolutePathToYour/htmlPage.html');
});

Nó đơn giản như vậy. Đối với mô -đun Express sử dụng này. Cài đặt Express:

const express = require('express');
const app = express();

app.get('/', function(request, response){
    response.sendFile('absolutePathToYour/htmlPage.html');
});
6

Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

Đã trả lời ngày 7 tháng 10 năm 2014 lúc 12:18Oct 7, 2014 at 12:18

Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

Muhammed Neswinemuhammed NeswineMuhammed Neswine

1.9881 Huy hiệu vàng18 Huy hiệu bạc20 Huy hiệu Đồng1 gold badge18 silver badges20 bronze badges

6

Bạn có thể lặp lại các tệp theo cách thủ công bằng cách sử dụng đối tượng FS, nhưng tôi khuyên bạn nên sử dụng Khung ExpressJS để giúp cuộc sống của bạn dễ dàng hơn nhiều.

... Nhưng nếu bạn khăng khăng làm điều đó một cách khó khăn:

var http = require('http');
var fs = require('fs');

http.createServer(function(req, res){
    fs.readFile('test.html',function (err, data){
        res.writeHead(200, {'Content-Type': 'text/html','Content-Length':data.length});
        res.write(data);
        res.end();
    });
}).listen(8000);

Đã trả lời ngày 18 tháng 1 năm 2011 lúc 20:05Jan 18, 2011 at 20:05

Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

StephenstephenStephen

7.7677 Huy hiệu vàng40 Huy hiệu bạc70 Huy hiệu đồng7 gold badges40 silver badges70 bronze badges

2

Tôi biết đây là một câu hỏi cũ, nhưng vì không ai đề cập đến nó, tôi nghĩ rằng nó đáng để thêm vào:

Nếu bạn thực sự muốn phục vụ nội dung tĩnh (nói một trang 'Giới thiệu', hình ảnh, CSS, v.v.), bạn có thể sử dụng một trong các mô-đun phục vụ nội dung tĩnh, ví dụ: nút tĩnh. .

Đã trả lời ngày 28 tháng 5 năm 2011 lúc 16:20May 28, 2011 at 16:20

PaulpaulPaul

1.8261 Huy hiệu vàng19 Huy hiệu bạc26 Huy hiệu đồng1 gold badge19 silver badges26 bronze badges

1

Đây có lẽ sẽ là một số điều tốt hơn vì bạn sẽ phát trực tuyến (các) tệp thay vì tải tất cả vào bộ nhớ như fs.readfile.

var http = require('http');
var fs = require('fs');
var path = require('path');
var ext = /[\w\d_-]+\.[\w\d]+$/;

http.createServer(function(req, res){
    if (req.url === '/') {
        res.writeHead(200, {'Content-Type': 'text/html'});
        fs.createReadStream('index.html').pipe(res);
    } else if (ext.test(req.url)) {
        fs.exists(path.join(__dirname, req.url), function (exists) {
            if (exists) {
                res.writeHead(200, {'Content-Type': 'text/html'});
                fs.createReadStream('index.html').pipe(res);
            } else {
                res.writeHead(404, {'Content-Type': 'text/html'});
                fs.createReadStream('404.html').pipe(res);
        });
    } else {
        //  add a RESTful service
    }
}).listen(8000);

Đã trả lời ngày 8 tháng 2 năm 2014 lúc 0:02Feb 8, 2014 at 0:02

user2428926user2428926user2428926

2112 Huy hiệu bạc2 Huy hiệu đồng2 silver badges2 bronze badges

Đây là bản cập nhật cho câu trả lời của Muhammed Neswine

Trong Express 4.x, SendFile đã được sử dụng và chức năng SendFile phải được sử dụng. Sự khác biệt là SendFile đi theo đường dẫn tương đối và SendFile đi theo con đường tuyệt đối. Vì vậy, __dirname được sử dụng để tránh mã hóa đường dẫn.sendFile function has to be used. The difference is sendfile takes relative path and sendFile takes absolute path. So, __dirname is used to avoid hardcoding the path.

var express = require('express');
var app = express();
var path = require("path");

app.get('/', function (req, res) {
    res.sendFile(path.join(__dirname + '/folder_name/filename.html'));
});

Đã trả lời ngày 26 tháng 2 năm 2015 lúc 19:33Feb 26, 2015 at 19:33

Mit Mehtamit MehtaMit Mehta

7798 Huy hiệu bạc13 Huy hiệu đồng8 silver badges13 bronze badges

1

Đó là cách linh hoạt và đơn giản hơn để sử dụng phương pháp

const express = require('express');
const app = express();

app.get('/', function(request, response){
    response.sendFile('absolutePathToYour/htmlPage.html');
});
7.

var fs = require('fs');
var http = require('http');

http.createServer(function(request, response) {
  response.writeHead(200, {'Content-Type': 'text/html'});

  var file = fs.createReadStream('index.html');
  file.pipe(response);

}).listen(8080);

console.log('listening on port 8080...');

Đã trả lời ngày 5 tháng 4 năm 2017 lúc 9:48Apr 5, 2017 at 9:48

Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

DevsullodevsulloDevsullo

8441 Huy hiệu vàng9 Huy hiệu bạc14 Huy hiệu đồng1 gold badge9 silver badges14 bronze badges

Cách tốt nhất tôi học được là sử dụng Express với các tệp HTML vì Express mang lại nhiều lợi thế. Ngoài ra, bạn có thể mở rộng nó đến một nền tảng heroku nếu bạn muốn..chỉ nói :)

var express = require("express");
var app     = express();
var path    = require("path");


app.get('/',function(req,res){
  res.sendFile(path.join(__dirname+'/index.html'));
});

app.listen(3000);



console.log("Running at Port 3000");

Sạch sẽ và tốt nhất .. !!!

Đã trả lời ngày 12 tháng 7 năm 2015 lúc 5:29Jul 12, 2015 at 5:29

Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

Kaushik Raykaushik RayKaushik Ray

5452 Huy hiệu vàng8 Huy hiệu bạc21 Huy hiệu đồng2 gold badges8 silver badges21 bronze badges

Nó thực sự đơn giản nếu bạn sử dụng đường ống. Sau đây là đoạn mã mã Server.js.

var http = require('http');
var fs = require('fs');

function onRequest(req, res){

    console.log("USER MADE A REQUEST. " +req.url);
    res.writeHead(200, {'Content-Type': 'text/html'});
    var readStream = fs.createReadStream(__dirname + '/index.html','utf8'); 
    
/*include your html file and directory name instead of <<__dirname + '/index.html'>>*/

    readStream.pipe(res);

}

http.createServer(onRequest).listen(7000);
console.log('Web Server is running...');

Đã trả lời ngày 25 tháng 11 năm 2019 lúc 12:03Nov 25, 2019 at 12:03

Abrar_11648Abrar_11648Abrar_11648

3283 Huy hiệu bạc6 Huy hiệu Đồng3 silver badges6 bronze badges

1

Cách dễ dàng để làm là, đặt tất cả các tệp của bạn bao gồm index.html hoặc một cái gì đó với tất cả các tài nguyên như CSS, JS, v.v. Để sử dụng _dirname như:

Trong máy chủ của bạn.js bằng cách sử dụng Express thêm những thứ này

var express = require('express');
var app = express();
app.use(express.static(__dirname + '/public'));

Và nếu bạn muốn có thư mục Seprate, hãy thêm Dir Dir trong thư mục công khai và sử dụng đường dẫn đó "/public/yourDirname"

Vì vậy, những gì chúng tôi đang làm chính xác ở đây? Chúng tôi đang tạo ứng dụng thể hiện rõ ràng và chúng tôi đang cung cấp địa chỉ nếu thư mục công khai truy cập tất cả các tài nguyên. Hi vọng điêu nay co ich !

Đã trả lời ngày 21 tháng 1 năm 2016 lúc 22:17Jan 21, 2016 at 22:17

Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

var http = require('http'),
    fs = require('fs');


fs.readFile('./index.html', function (err, html) {
    if (err) {
        throw err; 
    }       
    http.createServer(function(request, response) {  
        response.writeHeader(200, {"Content-Type": "text/html"});  
        response.write(html);  
        response.end();  
    }).listen(8000);
});
0

Đã trả lời ngày 9 tháng 7 năm 2017 lúc 11:21Jul 9, 2017 at 11:21

Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

2

Làm thế nào về việc sử dụng mô -đun Express?

var http = require('http'),
    fs = require('fs');


fs.readFile('./index.html', function (err, html) {
    if (err) {
        throw err; 
    }       
    http.createServer(function(request, response) {  
        response.writeHeader(200, {"Content-Type": "text/html"});  
        response.write(html);  
        response.end();  
    }).listen(8000);
});
1

Sau đó, bạn có thể sử dụng trình duyệt để nhận /localhost: 8000

Đã trả lời ngày 5 tháng 8 năm 2016 lúc 4:01Aug 5, 2016 at 4:01

李杰駿李杰駿

591 Huy hiệu bạc2 Huy hiệu đồng1 silver badge2 bronze badges

Tôi nghĩ rằng đây sẽ là một tùy chọn tốt hơn vì nó hiển thị URL chạy máy chủ:

var http = require('http'),
    fs = require('fs');


fs.readFile('./index.html', function (err, html) {
    if (err) {
        throw err; 
    }       
    http.createServer(function(request, response) {  
        response.writeHeader(200, {"Content-Type": "text/html"});  
        response.write(html);  
        response.end();  
    }).listen(8000);
});
2

Đã trả lời ngày 29 tháng 9 năm 2016 lúc 4:20Sep 29, 2016 at 4:20

Bạn cũng có thể sử dụng đoạn trích này:

var http = require('http'),
    fs = require('fs');


fs.readFile('./index.html', function (err, html) {
    if (err) {
        throw err; 
    }       
    http.createServer(function(request, response) {  
        response.writeHeader(200, {"Content-Type": "text/html"});  
        response.write(html);  
        response.end();  
    }).listen(8000);
});
3

Đã trả lời ngày 29 tháng 10 năm 2018 lúc 5:49Oct 29, 2018 at 5:49

HeytanayheytanayheyTanay

511 huy hiệu bạc6 Huy hiệu đồng1 silver badge6 bronze badges

Tôi biết đây là một câu hỏi cũ - đây là một tiện ích máy chủ tệp đơn giản nếu bạn không muốn sử dụng Connect hoặc Express; nhưng thay vào đó là mô -đun HTTP.

var http = require('http'),
    fs = require('fs');


fs.readFile('./index.html', function (err, html) {
    if (err) {
        throw err; 
    }       
    http.createServer(function(request, response) {  
        response.writeHeader(200, {"Content-Type": "text/html"});  
        response.write(html);  
        response.end();  
    }).listen(8000);
});
4

Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

Đã trả lời ngày 5 tháng 3 năm 2014 lúc 7:11Mar 5, 2014 at 7:11

user548user548user548

331 Huy hiệu bạc6 Huy hiệu đồng1 silver badge6 bronze badges

Đây là một câu hỏi khá cũ ... nhưng nếu trường hợp sử dụng của bạn ở đây là chỉ cần gửi một trang HTML cụ thể đến trình duyệt trên cơ sở ad hoc, tôi sẽ sử dụng một cái gì đó đơn giản như thế này:

var http = require('http'),
    fs = require('fs');


fs.readFile('./index.html', function (err, html) {
    if (err) {
        throw err; 
    }       
    http.createServer(function(request, response) {  
        response.writeHeader(200, {"Content-Type": "text/html"});  
        response.write(html);  
        response.end();  
    }).listen(8000);
});
5

Đã trả lời ngày 12 tháng 7 năm 2014 lúc 2:00Jul 12, 2014 at 2:00

Granmoegranmoegranmoe

Huy hiệu bạc 31211 silver badge11 bronze badges

Sử dụng EJ thay vì Ngọcjade

const express = require('express');
const app = express();

app.get('/', function(request, response){
    response.sendFile('absolutePathToYour/htmlPage.html');
});
8

app.js

var http = require('http'),
    fs = require('fs');


fs.readFile('./index.html', function (err, html) {
    if (err) {
        throw err; 
    }       
    http.createServer(function(request, response) {  
        response.writeHeader(200, {"Content-Type": "text/html"});  
        response.write(html);  
        response.end();  
    }).listen(8000);
});
6

./routes/index.js

var http = require('http'),
    fs = require('fs');


fs.readFile('./index.html', function (err, html) {
    if (err) {
        throw err; 
    }       
    http.createServer(function(request, response) {  
        response.writeHeader(200, {"Content-Type": "text/html"});  
        response.write(html);  
        response.end();  
    }).listen(8000);
});
7

Đã trả lời ngày 28 tháng 6 năm 2015 lúc 9:54Jun 28, 2015 at 9:54

Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

Bạn có thể tải HTML trực tiếp trong phương thức

const express = require('express');
const app = express();

app.get('/', function(request, response){
    response.sendFile('absolutePathToYour/htmlPage.html');
});
9

var http = require('http'),
    fs = require('fs');


fs.readFile('./index.html', function (err, html) {
    if (err) {
        throw err; 
    }       
    http.createServer(function(request, response) {  
        response.writeHeader(200, {"Content-Type": "text/html"});  
        response.write(html);  
        response.end();  
    }).listen(8000);
});
8

Nó giống như

var http = require('http'),
    fs = require('fs');


fs.readFile('./index.html', function (err, html) {
    if (err) {
        throw err; 
    }       
    http.createServer(function(request, response) {  
        response.writeHeader(200, {"Content-Type": "text/html"});  
        response.write(html);  
        response.end();  
    }).listen(8000);
});
9

Đã trả lời ngày 11 tháng 12 năm 2020 lúc 21:15Dec 11, 2020 at 21:15

MecdealityMecdealitymecdeality

3613 Huy hiệu bạc11 Huy hiệu đồng3 silver badges11 bronze badges

Thêm một tùy chọn khác - dựa trên câu trả lời ngoại trừ.

Cho TypeScript::

const express = require('express');
const app = express();

app.get('/', function(request, response){
    response.sendFile('absolutePathToYour/htmlPage.html');
});
0

.

Đã trả lời ngày 17 tháng 11 năm 2020 lúc 12:56Nov 17, 2020 at 12:56

RtmyrtmyRtmY

14.8k10 Huy hiệu vàng101 Huy hiệu bạc104 Huy hiệu đồng10 gold badges101 silver badges104 bronze badges

Bạn có thể sử dụng Express để tải và hiển thị các tệp HTML cơ bản với nút. Điều này mất khoảng 10 phút để đi. Nó được gắn với http.createserver () để bạn vẫn ở vùng đất của nút và có thể loại bỏ nó một cách dễ dàng.

const express = require('express');
const app = express();

app.get('/', function(request, response){
    response.sendFile('absolutePathToYour/htmlPage.html');
});
1

Đã trả lời ngày 10 tháng 3 lúc 19:52Mar 10 at 19:52

Kevin Genuskevin GenusKevin Genus

2302 huy hiệu bạc7 huy hiệu đồng2 silver badges7 bronze badges

Chúng tôi có thể tải tài liệu HTML với kết nối Frame hoạt động. Tôi đã đặt tài liệu HTML của mình và các hình ảnh liên quan trong thư mục công khai của dự án của tôi nơi các mô -đun mã và nút dưới đây có mặt.

const express = require('express');
const app = express();

app.get('/', function(request, response){
    response.sendFile('absolutePathToYour/htmlPage.html');
});
2

Tôi đã thử phương thức fs readFile () của FS, nhưng nó không tải được hình ảnh, đó là lý do tại sao tôi đã sử dụng khung kết nối.

Đã trả lời ngày 1 tháng 3 năm 2014 lúc 9:45Mar 1, 2014 at 9:45

https://gist.github.com/xgqfrms-GitHub/7697d5975bdffe8d474ac19ef906e906

Dưới đây là mã demo đơn giản của tôi cho các tệp HTML tĩnh của máy chủ bằng cách sử dụng Express Server!

Hy vọng nó sẽ giúp bạn!

const express = require('express');
const app = express();

app.get('/', function(request, response){
    response.sendFile('absolutePathToYour/htmlPage.html');
});
3

Đã trả lời ngày 28 tháng 11 năm 2016 lúc 12:20Nov 28, 2016 at 12:20

Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

XGQFRMSXGQFRMSxgqfrms

8.2091 Huy hiệu vàng55 Huy hiệu bạc57 Huy hiệu đồng1 gold badge55 silver badges57 bronze badges

0

thử cái này:

const express = require('express');
const app = express();

app.get('/', function(request, response){
    response.sendFile('absolutePathToYour/htmlPage.html');
});
4

Với điều này, bạn có thể bao gồm mã nguồn JS, CSS khi liên kết chúng và bạn có thể tải các biểu tượng, IMGS, GIF. Và nếu bạn muốn, bạn có thể thêm nhiều hơn nếu bạn cần.

Đã trả lời ngày 25 tháng 1 năm 2021 lúc 19:31Jan 25, 2021 at 19:31

Hướng dẫn how do i import an html file into node js? - làm cách nào để nhập tệp html vào nút js?

const express = require('express');
const app = express();

app.get('/', function(request, response){
    response.sendFile('absolutePathToYour/htmlPage.html');
});
5

index.html là tên của tệp HTML của bạn

Đã trả lời ngày 12 tháng 10 năm 2021 lúc 21:57Oct 12, 2021 at 21:57

Làm cách nào để tải tệp HTML trong Node JS?

ExpressJS là một khung web NodeJS phổ biến. ExpressJS cho phép bạn phát triển một máy chủ web tùy chỉnh theo yêu cầu dự án của bạn ...
Bước 1: Cài đặt Express. ....
Bước 2: Sử dụng hàm sendFile (). ....
Bước 3: Kết xuất HTML trong Express ..

Chúng ta có thể kết nối HTML với Node JS không?

Đối với trang HTML, chúng tôi phải sử dụng URL, vì vậy, trong mô -đun Node JS, URL URL đã được sử dụng để chúng tôi phải thêm mô -đun này vào tệp chương trình của chúng tôi. Và sau đó chúng ta có thể nhận được đường dẫn của URL yêu cầu như hình dưới đây. var url = yêu cầu ("url"); đường dẫn var = url.. And then we can get the path of request URL as shown below. var url=require("url"); var path=url.

Làm cách nào để viết mã HTML trong nút JS?

Doctype html> ' +' ' + header +' ' + body +' ';};Và truy cập HTML này với http: // localhost: 8080 từ trình duyệt của bạn ...
HTTP (API gốc nút).
Connect..
Thể hiện (sử dụng kết nối).
Cánh buồm (xây dựng trên Express).
Meteor..
Astro..

Làm cách nào để chuyển đổi HTML thành EJ?

Chuyển đổi các trang tĩnh thành các tệp EJS trong thư mục gốc của trang web của bạn, tạo một thư mục có tên là lượt xem và bên trong thư mục đó tạo hai trình phụ được gọi là trang và một phần.Di chuyển tất cả các tệp HTML của bạn vào trang phụ của trang và đổi tên.Tiện ích mở rộng tệp HTML đến.EJ.In the root directory of your website, create a folder called views and inside that folder create two sub-folders called pages and partials. Move all your HTML files into the pages sub-folder and rename the . html file extensions to . ejs.