Dengan pembangunan berterusan teknologi bahagian hadapan, semakin ramai pembangun menggunakan bahasa JavaScript untuk pembangunan web. Sebagai rangka kerja pembangunan sisi pelayan berdasarkan JavaScript, Node.js semakin digemari oleh pembangun. Semasa proses pembangunan, kami mungkin menghadapi situasi di mana kami perlu memanggil kaedah yang ditakrifkan dalam Node.js pada bahagian hadapan Artikel ini akan memperincikan cara menggunakan JavaScript untuk memanggil kaedah Node.js.
1. Pengetahuan asas Node.js
Sebelum kita mula belajar cara memanggil kaedah Node.js, kita perlu memahami beberapa pengetahuan asas terlebih dahulu.
Node.js ialah persekitaran masa jalan JavaScript berdasarkan enjin Chrome V8 Ia boleh menggunakan bahasa JavaScript untuk membangunkan pelbagai aplikasi, termasuk web pelayan , alat baris arahan, dsb. Node.js menggunakan pengaturcaraan tak segerak dipacu peristiwa untuk mengendalikan sejumlah besar permintaan serentak dengan cekap.
Dalam Node.js, setiap fail dianggap sebagai modul bebas dan modul boleh dieksport melalui Kaedah objek module.exports dan pembolehubah dalam dieksport untuk digunakan oleh modul lain. Pada masa yang sama, anda boleh menggunakan fungsi require() untuk memperkenalkan kaedah dan pembolehubah yang dieksport dalam modul lain.
Node.js menyediakan satu siri modul teras yang biasa digunakan, seperti: modul fs untuk operasi membaca dan menulis fail, modul http untuk Untuk membuat pelayan web, dsb.
2. Cara memanggil kaedah Node.js pada bahagian hadapan
Apabila kita perlu memanggil kaedah yang ditakrifkan dalam Node.js pada bahagian hadapan, kita boleh melakukannya melalui dua kaedah berikut :
1. Gunakan permintaan Ajax
Hantar data ke pelayan Node.js melalui permintaan Ajax Selepas pelayan Node.js memproses data, ia mengembalikannya ke bahagian hadapan dan melakukan seterusnya pemprosesan di bahagian hadapan.
Berikut ialah contoh mudah:
//前端代码 $.ajax({ url: "nodeServer.js", type: "POST", data: { "param": "foo" }, success: function(result) { console.log(result); } }); //Node.js代码 let http = require('http'); let qs = require('querystring'); http.createServer((req, res) => { if (req.method === 'POST') { let body = ''; req.on('data', function(data) { body += data; if (body.length > 1e6) { req.connection.destroy(); } }); req.on('end', function() { let post = qs.parse(body); let result = 'Node.js接收到前端的参数:' + post.param; res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end(result); }); } }).listen(3000);
Dalam kod ini, bahagian hadapan menghantar data ke pelayan Node.js melalui permintaan Ajax Selepas menerima permintaan, pelayan memproses data dan mengembalikan hasil pemprosesan ke bahagian hadapan, bahagian hadapan mengeluarkan hasil dalam konsol selepas menerima keputusan. Perlu diingatkan bahawa dalam pembangunan sebenar, kita perlu menyulitkan data mengikut situasi sebenar untuk mengelakkan data daripada dicuri oleh penyerang berniat jahat.
2. Gunakan WebSocket
WebSocket ialah protokol untuk komunikasi dupleks penuh melalui sambungan TCP tunggal.
Berikut ialah contoh mudah:
//前端代码 let socket = new WebSocket('ws://localhost:3000'); socket.onopen = function(event) { socket.send('from client: Hello'); }; socket.onmessage = function(event) { console.log(event.data); }; socket.onerror = function(event) { console.log('WebSocket error: ' + event.data); }; //Node.js代码 let WebSocketServer = require('ws').Server; let wss = new WebSocketServer({ port: 3000 }); wss.on('connection', function(ws) { ws.on('message', function(message) { console.log('Received from client: %s', message); ws.send('from server: Hello'); }); ws.on('close', function() { console.log('WebSocket closed!'); }); });
Dalam kod ini, bahagian hadapan menghantar data ke pelayan Node.js melalui sambungan WebSocket dan menerima data yang dikembalikan oleh pelayan. Pelayan menggunakan WebSocketServer untuk mencipta pelayan WebSocket, memantau permintaan sambungan pelanggan, dan memproses dan mengembalikan mesej pelanggan.
3. Ringkasan
Menggunakan JavaScript untuk memanggil kaedah Node.js boleh mencapai sambungan lancar antara bahagian hadapan dan bahagian belakang, meningkatkan interaktiviti dan kelajuan tindak balas aplikasi web. Artikel ini memperkenalkan kaedah menggunakan permintaan Ajax dan WebSocket untuk berkomunikasi dengan pelayan Node.js, dan menerangkan mekanisme modul Node.js dan prinsip modul biasa saya harap ia dapat memberikan sedikit bantuan untuk semua orang untuk membangunkan Node.js aplikasi.
Atas ialah kandungan terperinci kaedah nod panggilan javascript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!