Artikel ini akan membawa anda memahami modul http dalam Node.js
Artikel ini akan memperkenalkan anda kepada modul http Node.js dan memperkenalkan cara menggunakan modul http untuk membuat pelayan saya harap ia akan membantu anda!
1 Apakah http
dijelaskan dalam Ensiklopedia Baidu:
transmisi hiperteks Protokol. (Hyper Text Transfer Protocol, HTTP) ialah protokol permintaan-tindak balas yang mudah, yang biasanya berjalan di atas TCP. Ia menentukan jenis mesej yang boleh dihantar oleh pelanggan kepada pelayan dan jenis respons yang diterimanya. Tajuk mesej permintaan dan respons diberikan dalam bentuk ASCII; manakala [9] kandungan mesej mempunyai format yang serupa dengan MIME. Model ringkas ini memainkan peranan penting dalam kejayaan awal Web kerana ia menjadikan pembangunan dan penggunaan sangat mudah.
Jika anda telah mempelajari asas JavaSE, anda harus biasa dengan pengaturcaraan rangkaian
Sudah tentu, tidak mengapa jika anda belum mengetahuinya :
1.1. Protokol komunikasi rangkaian
Hari ini pada tahun 2022, rangkaian komputer telah menjadi satu keperluan untuk kehidupan seharian manusia, sama ada e-mel atau pemesejan segera dengan rakan , hiburan video pendek... Boleh dikatakan kita boleh menyambungkan berbilang komputer melalui rangkaian komputer.
Rangkaian komputer menghubungkan berbilang peranti komputer di bawah rangkaian melalui media penghantaran, kemudahan komunikasi dan protokol komunikasi rangkaian, merealisasikan perkongsian sumber dan penghantaran data.
Tetapi apabila komputer pada rangkaian yang sama bersambung dan berkomunikasi, mereka mesti mematuhi peraturan tertentu Dalam rangkaian komputer, peraturan untuk sambungan dan komunikasi ini dipanggil protokol komunikasi rangkaian:
<.>
1.2, alamat IP dan nombor port
Untuk membolehkan komputer dalam rangkaian berkomunikasi, setiap komputer juga mesti diberikan Pengenalan nombor, di mana komputer yang menerima data atau komputer yang menghantar data ditetapkan. Semak alamat IP komputer anda pada LANTekan WIN+R pada komputer Windows dan masukkan cmd untuk memasuki konsol dengan cepat
ipconfig
2. Gunakan modul http untuk mencipta pelayan
Node.js menyediakan modul http Modul http digunakan terutamanya untuk membina pelayan HTTP dan klien Untuk menggunakan pelayan HTTP atau fungsi klien, modul http mesti dipanggil. [Tutorial berkaitan yang disyorkan: tutorial video nodejs, Pengajaran pengaturcaraan]
2.1, pengumpulan tebal (pengenalan terperinci, pengenalan terperinci kepada objek yang digunakan Kaedah, keseluruhan proses pembinaan perkhidmatan http)
Pengenalan proses:- Mula-mula daftarkan objek pelayan dengan kaedah createServer(),
- Kemudian gunakan objek pelayan ini untuk memanggil kaedah on() untuk mendengar dan memproses acara,
- Panggil kaedah listen() untuk mengikat port nombor
// 首先导入http模块 const http = require('http'); // 创建http服务对象 const server = http.createServer();Objek Pelayan yang dikembalikan oleh pembina createServer ialah pemancar peristiwa Di sini, objek pelayan yang dicipta digunakan untuk menggunakan kaedah on( ) sendiri untuk melaksanakan pemantauan dan pemprosesan acara ke atasnya. Dengan cara ini, apabila permintaan http dihantar, kami boleh memprosesnya.
// 首先导入http模块 const http = require('http'); // 创建http服务对象 const server = http.createServer(); // 绑定事件监听 server.on('request', (request, response) => { // 永远相信美好的事情即将发生! });Kami telah memperkenalkan (alamat IP + port) sebelum ini Apabila komputer kami disambungkan ke Internet, penghala secara automatik akan memberikan alamat IP kepada kami melalui DHCP, tetapi jika kami ingin mengakses yang ditentukan. program pada komputer, kita mesti Terdapat nombor port. Untuk mengakses program yang ditentukan pada komputer, kita juga perlu menggunakan kaedah listen(). Anda hanya perlu menggunakan server.listen() untuk menghantar nombor port sebagai parameter ke dalam kaedah mendengar sebagai port mendengar.
// 首先导入http模块 const http = require('http'); // 创建http服务对象 const server = http.createServer(); // 绑定事件监听 server.on('request', (req, res) => { // 此函数内容只是小小调用一下res参数让程序更加易懂的跑起来 // 编写响应头(不写浏览器不识别) res.writeHead(200,{'Content-Type':'text/html;charset=UTF8'}); // 发送响应数据 res.end("<h1 id="欢迎使用node-js搭建服务">欢迎使用node.js搭建服务</h1>"); }); // 绑定端口号 server.listen(8888); // 控制台打印地址,方便快速调试 console.log('您的http服务启动在 http://127.0.0.1:8888/');
代码运行演示:
上述代码演示十分细节,但是实际开发起来,不建议这样一步步写,过于繁琐了
接下来跟着作者,让我们继续优化一下代码,让代码更加牛逼且简洁
2.2、薄发(极简才是王道,优雅!太优雅了!!!)
一步一步注册对象,调各种方法的流程太过繁琐,这里我们用小而美的做法,一步踏天,实现一个http接口:
const http = require('http'); const server = http.createServer(function(req,res){ // 永远相信美好的事情即将发生 }).listen(8080);
每当有 HTTP 请求到达服务器时,createServer 中传入的函数就被自动执行。所以这个函数也被称为是请求处理函数。我们可以直接在里面传入事件监听的回调函数,然后后面点上listen()方法,直接绑定端口号。
但是这样还不够好,是的,还可以更好,把上面回调函数用箭头函数修饰一下,更加美观。
const http = require('http'); const server = http.createServer((req,res) => { // 永远相信美好的事情即将发生 }).listen(8080);
当然
这
还不够好
还可以更好!
直接一个createServer()解决一切:
var http = require('http') // 创建服务器 http.createServer( (req, res) =>{ // 永远相信美好的事情即将发送 }).listen(8888);
看到这里,恭喜你已经入门了nodeJS的http模块 此时此刻的你 已经掌握了如下技能
- 实例化一个 HTTP 服务,绑定一个处理请求的函数,并对某个特定端口进行监听。
请继续关注作者,接下来 我们将学习
- request 中获取请求头,访问路径,方法以及消息体。
- response 象发送响应头,HTTP 状态码以及消息体。
- server.on()的相关参数 进行错误、超时、连接·····等等情况的处理
更多node相关知识,请访问:nodejs 教程!
Atas ialah kandungan terperinci Artikel ini akan membawa anda memahami modul http dalam Node.js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Aplikasi JavaScript di dunia nyata termasuk pengaturcaraan sisi pelayan, pembangunan aplikasi mudah alih dan Internet of Things Control: 1. Pengaturcaraan sisi pelayan direalisasikan melalui node.js, sesuai untuk pemprosesan permintaan serentak yang tinggi. 2. Pembangunan aplikasi mudah alih dijalankan melalui reaktnatif dan menyokong penggunaan silang platform. 3. Digunakan untuk kawalan peranti IoT melalui Perpustakaan Johnny-Five, sesuai untuk interaksi perkakasan.

Saya membina aplikasi SaaS multi-penyewa berfungsi (aplikasi edTech) dengan alat teknologi harian anda dan anda boleh melakukan perkara yang sama. Pertama, apakah aplikasi SaaS multi-penyewa? Aplikasi SaaS Multi-penyewa membolehkan anda melayani beberapa pelanggan dari Sing

Artikel ini menunjukkan integrasi frontend dengan backend yang dijamin oleh permit, membina aplikasi edtech SaaS yang berfungsi menggunakan Next.Js. Frontend mengambil kebenaran pengguna untuk mengawal penglihatan UI dan memastikan permintaan API mematuhi dasar peranan

JavaScript adalah bahasa utama pembangunan web moden dan digunakan secara meluas untuk kepelbagaian dan fleksibiliti. 1) Pembangunan front-end: Membina laman web dinamik dan aplikasi satu halaman melalui operasi DOM dan kerangka moden (seperti React, Vue.js, sudut). 2) Pembangunan sisi pelayan: Node.js menggunakan model I/O yang tidak menyekat untuk mengendalikan aplikasi konkurensi tinggi dan masa nyata. 3) Pembangunan aplikasi mudah alih dan desktop: Pembangunan silang platform direalisasikan melalui reaktnatif dan elektron untuk meningkatkan kecekapan pembangunan.

Trend terkini dalam JavaScript termasuk kebangkitan TypeScript, populariti kerangka dan perpustakaan moden, dan penerapan webassembly. Prospek masa depan meliputi sistem jenis yang lebih berkuasa, pembangunan JavaScript, pengembangan kecerdasan buatan dan pembelajaran mesin, dan potensi pengkomputeran IoT dan kelebihan.

JavaScript adalah asas kepada pembangunan web moden, dan fungsi utamanya termasuk pengaturcaraan yang didorong oleh peristiwa, penjanaan kandungan dinamik dan pengaturcaraan tak segerak. 1) Pengaturcaraan yang didorong oleh peristiwa membolehkan laman web berubah secara dinamik mengikut operasi pengguna. 2) Penjanaan kandungan dinamik membolehkan kandungan halaman diselaraskan mengikut syarat. 3) Pengaturcaraan Asynchronous memastikan bahawa antara muka pengguna tidak disekat. JavaScript digunakan secara meluas dalam interaksi web, aplikasi satu halaman dan pembangunan sisi pelayan, sangat meningkatkan fleksibiliti pengalaman pengguna dan pembangunan silang platform.

Python lebih sesuai untuk sains data dan pembelajaran mesin, manakala JavaScript lebih sesuai untuk pembangunan front-end dan penuh. 1. Python terkenal dengan sintaks ringkas dan ekosistem perpustakaan yang kaya, dan sesuai untuk analisis data dan pembangunan web. 2. JavaScript adalah teras pembangunan front-end. Node.js menyokong pengaturcaraan sisi pelayan dan sesuai untuk pembangunan stack penuh.

JavaScript tidak memerlukan pemasangan kerana ia sudah dibina dalam pelayar moden. Anda hanya memerlukan editor teks dan penyemak imbas untuk memulakan. 1) Dalam persekitaran penyemak imbas, jalankan dengan memasukkan fail HTML melalui tag. 2) Dalam persekitaran Node.js, selepas memuat turun dan memasang node.js, jalankan fail JavaScript melalui baris arahan.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

SublimeText3 Linux versi baharu
SublimeText3 Linux versi terkini

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan