Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >alat permintaan http nodejs
Node.js ialah persekitaran pembangunan yang sangat popular, dan enjin JavaScriptnya yang berkuasa boleh menyediakan aplikasi web yang cekap. Dalam pembangunan web, permintaan dan respons HTTP sering diperlukan, yang memerlukan penggunaan beberapa alat permintaan HTTP. Artikel ini terutamanya akan memperkenalkan alat permintaan HTTP yang biasa digunakan dalam Node.js.
1. Modul HTTP terbina dalam Node.js
Node.js mempunyai modul HTTP terbina dalam sendiri, yang boleh membuat perkhidmatan HTTP dengan mudah. Dalam modul HTTP, banyak API permintaan dan tindak balas yang berkaitan disediakan, melibatkan pembacaan pengepala permintaan HTTP dan badan permintaan, output pengepala respons dan badan tindak balas, dsb., yang sangat mudah digunakan. Berikut ialah kod yang menggunakan modul HTTP untuk mencipta pelayan:
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/'); });
2 Gunakan permintaan modul pihak ketiga
Walaupun Node.js mempunyai modul HTTP terbina dalam, ia. API mungkin tahap terlalu rendah Penggunaan Ia tidak begitu mudah untuk bangun. Oleh itu, kami juga boleh memilih untuk menggunakan modul pihak ketiga, seperti modul permintaan. Mula-mula gunakan npm untuk memasang:
npm install request
Modul permintaan menyediakan API yang lebih mudah yang boleh melengkapkan permintaan HTTP dengan cepat dan mendapatkan data respons. Berikut ialah contoh menggunakan modul permintaan untuk menghantar permintaan GET:
const request = require('request'); request('http://www.baidu.com', function (error, response, body) { console.error('error:', error); // Print the error if one occurred console.log('statusCode:', response && response.statusCode); // Print the response status code if a response was received console.log('body:', body); // Print the HTML for the Google homepage. });
3 Gunakan axios modul pihak ketiga
Selain modul permintaan, terdapat juga sangat. alat permintaan HTTP yang berkuasa - axios. Ia adalah klien HTTP berasaskan Promise yang boleh digunakan dalam penyemak imbas dan Node.js. axios mempunyai ciri berikut:
Gunakan npm untuk memasang:
npm install axios
Berikut ialah contoh penggunaan axios untuk menghantar permintaan GET:
const axios = require('axios') axios.get('https://api.github.com/users/johnny4120') .then(function (response) { console.log(response.data) }) .catch(function (error) { console.log(error) })
4
Apabila membuat permintaan, beberapa parameter sering dibawa dan modul berbeza mengendalikannya secara berbeza. Apabila menggunakan modul permintaan untuk membuat permintaan, anda boleh menggunakan modul rentetan pertanyaan untuk menukar objek menjadi rentetan parameter permintaan, atau anda boleh menggunakan parameter json secara langsung. Contohnya:const querystring = require('querystring'); const request = require('request'); const options = { url: 'https://www.google.com/search', qs: { q: 'node.js' } }; request(options, function(error, response, body) { console.log(body); }); // 或者 request.post({ url: 'http://www.example.com', json: {key: 'value'} }, function(error, response, body) { console.log(body); });Apabila menggunakan modul axios, anda boleh menggunakan parameter params untuk menukar objek kepada rentetan pertanyaan atau anda boleh menggunakan parameter data:
const axios = require('axios'); axios.get('https://api.github.com/search/repositories', { params: { q: 'node', sort: 'stars', order: 'desc' } }) .then(function (response) { console.log(response.data); }) .catch(function (error) { console.log(error); }); // 或者 axios.post('http://www.example.com', {foo: 'bar'}) .then(function (response) { console.log(response.data); }) .catch(function (error) { console.log(error); });Ringkasnya, terdapat adalah banyak kaedah dalam Node.js Terdapat beberapa alatan permintaan HTTP untuk dipilih, setiap satunya mempunyai senario yang berkenaan. Memilih alat yang paling sesuai berdasarkan keperluan projek akan menjadikan pembangunan lebih cekap dan mudah.
Atas ialah kandungan terperinci alat permintaan http nodejs. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!