Rumah  >  Artikel  >  hujung hadapan web  >  Nodejs membina pelayan laman web

Nodejs membina pelayan laman web

王林
王林asal
2023-05-08 16:52:37887semak imbas

Node.js ialah persekitaran masa jalan JavaScript berdasarkan enjin Chrome V8 yang boleh digunakan untuk membina aplikasi web yang cekap. Dengan pembangunan Node.js dalam pembangunan, ia telah menjadi alat pembangunan back-end yang digunakan secara meluas Artikel ini akan memperkenalkan cara menggunakan Node.js untuk membina pelayan laman web.

1. Pasang Node.js
Pertama, sebelum memasang Node.js, semak sama ada Node.js dipasang pada komputer dan gunakan arahan "node -v" untuk melihat versi yang dipasang. Jika ia tidak dipasang, anda boleh memuat turun pakej pemasangan dari tapak web rasmi Node.js dan memasangnya.

2. Buat projek
Seterusnya, cipta folder baru myapp sebagai folder projek, dan gunakan alat baris arahan untuk memasuki folder. Seterusnya, memasukkan arahan "npm init" dalam alat baris arahan akan menghasilkan fail package.json, yang digunakan untuk menyimpan maklumat asas dan modul bergantung projek.

3. Pasang Express
Express ialah rangka kerja Node.js yang popular Di sini kami menggunakan rangka kerja Express untuk membina pelayan web. Masukkan arahan "npm install express –save" dalam alat baris arahan untuk memasang rangka kerja Express dan simpan ke senarai pergantungan projek. Seterusnya, kami mencipta fail app.js dan masukkan kod berikut:

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

const port = 3000;

app.get('/', (req, res) => {
      res.send('Hello World!');
});

app.listen(port, () => {
      console.log(`Server running at http://localhost:${port}`);
});

Kod ini menggunakan contoh asas modul ekspres untuk mencipta aplikasi Ekspres. Dalam aplikasi anda, tentukan nombor port dan dengar permintaan menggunakan kaedah app.listen().

4. Jalankan aplikasi
Jalankan arahan "node app.js" dalam baris arahan, dan aplikasi akan mula mendengar permintaan. Masukkan "http://localhost:3000" dalam penyemak imbas, dan pelayan harus mengembalikan mesej teks "Hello World!"

5. Mengehos fail statik
Mengehos fail statik sangat penting untuk pembangunan web. Kita boleh menggunakan perisian tengah yang disediakan oleh rangka kerja Express untuk mengehoskan fail sumber statik. Tambahkan kod berikut pada fail app.js:

app.use(express.static('public'));

yang public ialah nama direktori tempat fail statik diletakkan dan fail yang disimpan dalam direktori ini akan dihoskan pada pelayan.

6. Gunakan enjin templat
Apabila anda perlu mengembalikan HTML atau paparan dinamik, anda boleh menggunakan enjin templat untuk menjananya. Rangka kerja Express menyokong berbilang enjin templat, seperti Pug dan EJS. Di sini kami memilih enjin templat EJS.

Masukkan arahan "npm install ejs –save" pada baris arahan untuk memasang enjin templat EJS, dan tambahkan kod berikut dalam fail app.js:

app.set('view engine', 'ejs');

Seterusnya, kita boleh tambahkannya pada folder paparan Cipta fail index.ejs dalam fail app.js dan tambahkan kod berikut dalam fail app.js:

app.get('/users/:name', (req, res) => {
      res.render('index', { name: req.params.name });
});

Masukkan "http://localhost:3000/users/Jim " dalam penyemak imbas dan anda boleh melihat bahawa mesej teks "Hello Jim!" dikembalikan.

7 Menggunakan penghalaan
Penghalaan ialah koleksi laluan dan kaedah untuk mengakses halaman tapak web yang berbeza Anda boleh menggunakan rangka kerja Ekspres untuk mentakrifkan dan memproses penghalaan. Tambahkan kod berikut dalam fail app.js:

app.get('/about', (req, res) => {
      res.send('This is about page');
});

app.post('/login', (req, res) => {
      res.send('This is login page');
});

Apabila mengakses laluan "/about" atau menggunakan kaedah POST untuk mengakses laluan "/login", pelayan akan mengembalikan respons yang sepadan.

8. Menggunakan middleware
Middleware terletak di antara klien dan pelayan dan boleh memproses permintaan, mengubah suai respons atau melaksanakan tugas lain. Kami boleh menggunakan perisian tengah yang disediakan oleh rangka kerja Express untuk meningkatkan kefungsian aplikasi. Berikut ialah contoh middleware yang mudah, tambahkan kod berikut dalam fail app.js:

const myMiddleware = (req, res, next) => {
    console.log('This is my middleware');
    next();
};
app.use(myMiddleware);

Kami boleh menambah berbilang middleware untuk melanjutkan kefungsian aplikasi.

9 Gunakan pangkalan data
Untuk kebanyakan tapak web, pangkalan data adalah penting. Node.js menyediakan banyak pemacu pangkalan data yang popular seperti Mongodb dan MySQL, dsb. Mengambil pemacu MySQL sebagai contoh, masukkan arahan "npm install mysql –save" dalam alat baris arahan untuk memasang modul Mysql.

Seterusnya, anda boleh menambah kod berikut dalam fail app.js:

const mysql = require('mysql');

const connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: '',
    database: 'mydb'
});

connection.connect((error) => {
    if (error) {
        console.log('Connection failed');
        return;
    }
    console.log('Connected successfully');
});

app.get('/users', (req, res) => {
    connection.query('SELECT * FROM users', (error, results, fields) => {
        if (error) {
            console.log('Failed to get users');
            return;
        }
        res.send(results);
    });
});

Dalam kod ini, kami menyambung ke pangkalan data MySQL tempatan dan mendapatkan semua pengguna daripada jadual pengguna dan meletakkan hasilnya kembali.

Setakat ini, kami telah berjaya membina pelayan laman web ringkas menggunakan Node.js dan melaksanakan beberapa fungsi asas. Walaupun artikel ini hanyalah tutorial pengenalan, sambil anda mempelajari rangka kerja Node.js dan Express, pembangun boleh membina aplikasi web yang lebih maju dengan mudah.

Atas ialah kandungan terperinci Nodejs membina pelayan laman web. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Bagaimana untuk menulis jqueryArtikel seterusnya:Bagaimana untuk menulis jquery