Hướng dẫn how do i start node in html? - làm cách nào để bắt đầu nút trong html?

Tôi có một trang HTML đơn giản với Angular JS như sau:

    //Application name
    var app = angular.module("myTmoApppdl", []);

    app.controller("myCtrl", function ($scope) {
        //Sample login function
        $scope.signin = function () {
            var formData =
                    {
                        email: $scope.email,
                        password: $scope.password
                    };
        console.log("Form data is:" + JSON.stringify(formData));
    };
});

Tệp HTML:


    
        
    

    
        

Tôi mới đến Node JS. Tôi đã cài đặt Node JS Server trong hệ thống của mình nhưng tôi không chắc làm thế nào để chạy một tệp HTML đơn giản bằng Node JS?

Đã hỏi ngày 14 tháng 3 năm 2016 lúc 18:29Mar 14, 2016 at 18:29

Hướng dẫn how do i start node in html? - làm cách nào để bắt đầu nút trong html?

3

Bạn có thể sử dụng máy chủ web NodeJS tích hợp.

Thêm tệp


    
        
    

    
        
2 Ví dụ và đặt mã sau:

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

const PORT=8080; 

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(PORT);
});

Và sau khi bắt đầu máy chủ từ bảng điều khiển với lệnh


    
        
    

    
        
3. Trang Index.html của bạn sẽ có sẵn trên URL

    
        
    

    
        
4

Đã trả lời ngày 14 tháng 3 năm 2016 lúc 18:38Mar 14, 2016 at 18:38

Hướng dẫn how do i start node in html? - làm cách nào để bắt đầu nút trong html?

AlexandralexandrAlexandr

7991 Huy hiệu vàng7 Huy hiệu bạc16 Huy hiệu đồng1 gold badge7 silver badges16 bronze badges

7

Chỉ cần cài đặt máy chủ http trên toàn cầuhttp-server globally


    
        
    

    
        
5

Đâu

Điều đó sẽ cung cấp cho bạn một liên kết đến các trang web AccessYour:


    
        
    

    
        
7

Đã trả lời ngày 15 tháng 3 năm 2018 lúc 16:34Mar 15, 2018 at 16:34

5

Tôi cũng phải đối mặt với kịch bản như vậy trong đó tôi phải chạy một ứng dụng web trong nodejs với index.html là điểm nhập. Đây là những gì tôi đã làm:

  • Chạy
    
        
            
        
    
        
            
    8 trong root of Ứng dụng (điều này sẽ tạo tệp pack.json)
  • Cài đặt Express in Root of Ứng dụng:
    
        
            
        
    
        
            
    9 (Lưu sẽ cập nhật Gói.JSON với sự phụ thuộc rõ ràng)
  • Tạo một thư mục công khai trong root của ứng dụng của bạn và đặt tệp điểm nhập của bạn (index.html) và tất cả các tệp phụ thuộc của nó (đây chỉ là để đơn giản hóa, trong ứng dụng lớn, đây có thể không phải là một cách tiếp cận tốt).
  • Tạo tệp server.js trong gốc của ứng dụng trong đó chúng tôi sẽ sử dụng mô -đun Express của nút sẽ phục vụ thư mục công khai từ thư mục hiện tại của nó.server.js file in root of app where in we will use express module of node which will serve the public folder from its current directory.
  • server.js

    var express = require('express');
    var app = express();
    app.use(express.static(__dirname + '/public')); //__dir and not _dir
    var port = 8000; // you can use any port
    app.listen(port);
    console.log('server on' + port);
    
  • làm

    var http = require('http');
    var fs = require('fs');
    
    const PORT=8080; 
    
    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(PORT);
    });
    
    0: Nó sẽ xuất ra "Máy chủ trên 8000"

  • Bắt đầu http: // localhost: 8000/: chỉ mục của bạn.html sẽ được gọi

Cấu trúc tệp sẽ là một cái gì đó tương tự

Hướng dẫn how do i start node in html? - làm cách nào để bắt đầu nút trong html?

Pierre C.

1.4101 Huy hiệu vàng10 Huy hiệu bạc18 Huy hiệu đồng1 gold badge10 silver badges18 bronze badges

Đã trả lời ngày 9 tháng 1 năm 2017 lúc 14:53Jan 9, 2017 at 14:53

2

Di chuyển tệp HTML của bạn trong một thư mục "www". Tạo tệp "server.js" với mã:

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

app.use(express.static(__dirname + '/www'));

app.listen('3000');
console.log('working on 3000');

Sau khi tạo tệp, hãy chạy lệnh "Node Server.js"

Đã trả lời ngày 24 tháng 1 năm 2019 lúc 12:46Jan 24, 2019 at 12:46

Ved Prakashved PrakashVed Prakash

4475 Huy hiệu bạc7 Huy hiệu Đồng5 silver badges7 bronze badges

3

Lệnh đơn giản nhất cho đến nay:

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

const PORT=8080; 

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(PORT);
});
1

Điều này yêu cầu một chỉ mục hiện có.html tại DIR tại nơi lệnh này đang được thực thi.

Điều này đã được Vijaya Simha đề cập, nhưng tôi nghĩ rằng sử dụng NPX là cách sạch hơn và ngắn hơn. Tôi đang điều hành một máy chủ web với phương pháp này từ nhiều tháng.

Tài liệu: https://www.npmjs.com/package/http-server

Đã trả lời ngày 21 tháng 9 năm 2019 lúc 17:58Sep 21, 2019 at 17:58

Hướng dẫn how do i start node in html? - làm cách nào để bắt đầu nút trong html?

CODEPLEBCODEPLEBcodepleb

9.64013 Huy hiệu vàng64 Huy hiệu bạc105 Huy hiệu Đồng13 gold badges64 silver badges105 bronze badges

2

Truy cập HTTP và nhận các tệp HTML được phục vụ trên 8080:

>npm install -g http-server

>http-server

Nếu bạn có thư mục công khai (. Bạn có thể gửi thư mục dưới dạng parament EX:

http-server [path] [options]

Kết quả dự kiến:

*> Bắt đầu http-server, phục vụ ./public có sẵn trên:

http://LOCALIP:8080

http://127.0.0.1:8080

Nhấn ctrl-c để dừng máy chủ

HTTP-server dừng lại.*

Bây giờ, bạn có thể chạy: http: // localhost: 8080

Sẽ mở index.html trên thư mục ./public

Tài liệu tham khảo: https://www.npmjs.com/package/http-server

Đã trả lời ngày 30 tháng 8 năm 2020 lúc 15:28Aug 30, 2020 at 15:28

Đây là một tệp HTML đơn giản "demo.htm" được lưu trữ trong cùng một thư mục với tệp Node.js.



  
    

Heading

Paragraph.

Dưới đây là tệp Node.js để gọi tệp HTML này.

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

var server = http.createServer(function(req, resp){
  // Print the name of the file for which request is made.
  console.log("Request for demo file received.");
  fs.readFile("Documents/nodejs/demo.html",function(error, data){
    if (error) {
      resp.writeHead(404);
      resp.write('Contents you are looking for-not found');
      resp.end();
    }  else {
      resp.writeHead(200, {
        'Content-Type': 'text/html'
      });
      resp.write(data.toString());
      resp.end();
    }
  });
});

server.listen(8081, '127.0.0.1');

console.log('Server running at http://127.0.0.1:8081/');

Intiate tệp NodeJS ở trên trong dấu nhắc lệnh và thông báo "Máy chủ đang chạy tại http://127.0.0.1:8081/" được hiển thị.

Hướng dẫn how do i start node in html? - làm cách nào để bắt đầu nút trong html?

ocodo

28.9K17 Huy hiệu vàng102 Huy hiệu bạc116 Huy hiệu đồng17 gold badges102 silver badges116 bronze badges

Đã trả lời ngày 27 tháng 2 năm 2018 lúc 17:09Feb 27, 2018 at 17:09

Hướng dẫn how do i start node in html? - làm cách nào để bắt đầu nút trong html?

DivyadivyaDivya

Phù hiệu đồng 6177 bronze badges

1

Hoặc bạn sử dụng khung hoặc bạn viết máy chủ của riêng mình bằng nodejs.

Một máy chủ tệp đơn giản có thể trông như thế này:

import * as http from 'http';
import * as url from 'url';
import * as fs from 'fs';
import * as path from 'path';

var mimeTypes = {
     "html": "text/html",
     "jpeg": "image/jpeg",
     "jpg": "image/jpeg",
     "png": "image/png",
     "js": "text/javascript",
     "css": "text/css"};

http.createServer((request, response)=>{
    var pathname = url.parse(request.url).pathname;
    var filename : string;
    if(pathname === "/"){
        filename = "index.html";
    }
    else
        filename = path.join(process.cwd(), pathname);

    try{
        fs.accessSync(filename, fs.F_OK);
        var fileStream = fs.createReadStream(filename);
        var mimeType = mimeTypes[path.extname(filename).split(".")[1]];
        response.writeHead(200, {'Content-Type':mimeType});
        fileStream.pipe(response);
    }
    catch(e) {
            console.log('File not exists: ' + filename);
            response.writeHead(404, {'Content-Type': 'text/plain'});
            response.write('404 Not Found\n');
            response.end();
            return;
    }
    return;
    }
}).listen(5000);

Đã trả lời ngày 14 tháng 3 năm 2016 lúc 18:35Mar 14, 2016 at 18:35

MatthiasmatthiasMatthias

8981 Huy hiệu vàng7 Huy hiệu bạc22 Huy hiệu đồng1 gold badge7 silver badges22 bronze badges

4

Để triển khai các trang HTML thông qua dự án Node JS, ví dụ để triển khai tệp xây dựng góc trong đó tất cả các yêu cầu cần được chuyển hướng đến index.html trong trường hợp đó, chúng tôi có thể sử dụng tuyến đường hoang dã của nút JS để phục vụ góc Dự án nhưng chúng ta cần đảm bảo rằng không có xung đột đặt tên của tuyến đường góc và tuyến API của Node JS.

app.js


    
        
    

    
        
0

Đã trả lời ngày 14 tháng 6 năm 2021 lúc 10:37Jun 14, 2021 at 10:37

Hướng dẫn how do i start node in html? - làm cách nào để bắt đầu nút trong html?


    
        
    

    
        
1

Hướng dẫn how do i start node in html? - làm cách nào để bắt đầu nút trong html?

Tyler2P

2.28116 Huy hiệu vàng21 Huy hiệu bạc29 Huy hiệu đồng16 gold badges21 silver badges29 bronze badges

Đã trả lời ngày 3 tháng 4 lúc 6:05Apr 3 at 6:05

Hướng dẫn how do i start node in html? - làm cách nào để bắt đầu nút trong html?

2