Rumah > hujung hadapan web > Soal Jawab bahagian hadapan > antara muka padam menulis nodejs

antara muka padam menulis nodejs

WBOY
Lepaskan: 2023-05-28 09:37:06
asal
630 orang telah melayarinya

Node.js ialah sumber terbuka, persekitaran masa jalan JavaScript merentas platform yang digunakan secara meluas dalam pembangunan aplikasi web. Salah satu cirinya ialah keupayaan untuk menggunakan modul HTTP untuk mencipta pelayan dan mengendalikan permintaan HTTP. Dalam pembangunan sebenar, kami bukan sahaja perlu mencipta pelayan HTTP, tetapi juga perlu melaksanakan pelbagai antara muka API RESTful. Artikel ini akan memperkenalkan cara untuk melaksanakan antara muka padam dalam Node.js.

  1. Buat pelayan HTTP

Pertama, kita perlu menggunakan modul http Node.js untuk mencipta pelayan HTTP, kodnya adalah seperti berikut:

const http = require('http');

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World
');
});

server.listen(3000, () => {
  console.log('Server running at http://localhost:3000/');
});
Salin selepas log masuk

Kod di atas mencipta Buat pelayan HTTP dan dengar pada port 3000. Apabila kita mengakses http://localhost:3000/, pelayan akan mengembalikan "Hello World".

  1. Melaksanakan antara muka pemadaman

Seterusnya, kita perlu melaksanakan antara muka pemadaman. Dalam API RESTful, operasi pemadaman biasanya menggunakan kaedah HTTP DELETE. Kami boleh menggunakan peristiwa permintaan modul HTTP Node.js untuk mendengar permintaan pelanggan.

Pertama, kita perlu menentukan URL untuk memadamkan antara muka. Mengambil contoh sebagai contoh, kami menganggap bahawa kami mahu memadamkan pengguna yang URLnya ialah http://localhost:3000/users/:id, dengan :id ialah pengecam unik pengguna. Kita boleh menggunakan modul url Node.js untuk menghuraikan URL ke dalam objek dan kemudian mendapatkan parameter :id. Kodnya adalah seperti berikut:

const http = require('http');
const url = require('url');

const server = http.createServer((req, res) => {
  const reqUrl = url.parse(req.url, true);
  const id = reqUrl.pathname.split('/')[2];

  if (req.method === 'DELETE' && reqUrl.pathname === `/users/${id}`) {
    // 处理删除请求
  } else {
    res.statusCode = 404;
    res.end('Not Found');
  }
});

server.listen(3000, () => {
  console.log('Server running at http://localhost:3000/');
});
Salin selepas log masuk

Dalam kod di atas, kami mula-mula menggunakan kaedah url.parse untuk menghuraikan URL yang diminta ke dalam objek, dan kemudian menggunakan kaedah split untuk mendapatkan parameter :id.

Seterusnya, kami menentukan sama ada kaedah yang diminta adalah PADAM dan URL mengandungi parameter /id. Jika ya, ini bermakna pelanggan meminta antara muka untuk memadamkan pengguna. Kita boleh melaksanakan logik pemadaman dalam pernyataan if.

  1. Melaksanakan logik pemadaman

Dalam logik pemadaman, kita perlu menggunakan modul fs Node.js untuk membaca data pengguna dan menulis semula data yang dipadamkan ke tengah fail . Andaikan bahawa data pengguna disimpan dalam fail users.json dengan kandungan berikut:

{
  "1": {
    "name": "张三",
    "age": 20,
    "email": "zhangsan@example.com"
  },
  "2": {
    "name": "李四",
    "age": 30,
    "email": "lisi@example.com"
  },
  "3": {
    "name": "王五",
    "age": 25,
    "email": "wangwu@example.com"
  }
}
Salin selepas log masuk

Mula-mula kita boleh menggunakan kaedah readFileSync modul fs untuk membaca kandungan dalam fail users.json, dan kemudian menghuraikannya ke dalam objek JavaScript.

Seterusnya, kami boleh menggunakan operator padam JavaScript untuk memadam objek pengguna yang akan dipadamkan daripada objek JavaScript. Akhir sekali, kami menggunakan kaedah writeFileSync modul fs untuk menulis semula objek JavaScript yang diubah suai ke dalam fail users.json. Kodnya adalah seperti berikut:

const http = require('http');
const url = require('url');
const fs = require('fs');

const server = http.createServer((req, res) => {
  const reqUrl = url.parse(req.url, true);
  const id = reqUrl.pathname.split('/')[2];

  if (req.method === 'DELETE' && reqUrl.pathname === `/users/${id}`) {
    // 读取用户数据
    const users = JSON.parse(fs.readFileSync('./users.json'));

    // 删除用户
    delete users[id];

    // 写入修改后的用户数据
    fs.writeFileSync('./users.json', JSON.stringify(users));

    // 返回删除成功提示
    res.statusCode = 200;
    res.setHeader('Content-Type', 'text/plain');
    res.end(`User ${id} deleted successfully`);
  } else {
    res.statusCode = 404;
    res.end('Not Found');
  }
});

server.listen(3000, () => {
  console.log('Server running at http://localhost:3000/');
});
Salin selepas log masuk

Dalam kod di atas, kami mula-mula menggunakan kaedah readFileSync modul fs untuk membaca kandungan dalam fail users.json dan menghuraikannya ke dalam objek JavaScript. Kemudian, kami menggunakan operator padam untuk mengalih keluar pengguna yang akan dipadamkan daripada objek JavaScript. Akhir sekali, kami menggunakan kaedah writeFileSync modul fs untuk menulis semula objek JavaScript yang diubah suai ke dalam fail users.json dan mengembalikan gesaan pemadaman yang berjaya.

  1. Menguji antara muka pemadaman

Kini, kami telah menyelesaikan pelaksanaan antara muka pemadaman. Untuk menguji sama ada antara muka berfungsi dengan betul, kami boleh menggunakan arahan curl untuk mensimulasikan permintaan HTTP DELETE. Kodnya adalah seperti berikut:

curl -X DELETE http://localhost:3000/users/1
Salin selepas log masuk

Arahan di atas akan menghantar permintaan HTTP DELETE ke http://localhost:3000/users/1 untuk memadamkan pengguna dengan ID 1 daripada fail users.json. Jika semuanya normal, pelayan akan mengembalikan gesaan "Pengguna 1 berjaya dipadamkan".

Ringkasan

Artikel ini memperkenalkan cara untuk melaksanakan antara muka padam dalam Node.js. Kami menggunakan modul http Node.js untuk mencipta pelayan HTTP dan menggunakan acara permintaan untuk mendengar permintaan pelanggan. Apabila klien menghantar permintaan HTTP DELETE, kami menggunakan modul fs untuk membaca data pengguna dan menggunakan operator padam JavaScript untuk memadamkan pengguna yang akan dipadamkan daripada objek JavaScript. Akhir sekali, kami menggunakan modul fs untuk menulis semula objek JavaScript yang diubah suai ke dalam fail data pengguna.

Atas ialah kandungan terperinci antara muka padam menulis nodejs. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan