NodeJS http模块用法示例【创建web服务器/客户端】

时间:2021-05-26

本文实例讲述了NodeJS http模块用法。分享给大家供大家参考,具体如下:

Node.js提供了http模块,用于搭建HTTP服务端和客户端。

创建Web服务器

/** * node-http 服务端 */let http = require('http');let url = require('url');let fs = require('fs');// 创建服务器let server = http.createServer((req, res) => { // 解析请求 let pathname = url.parse(req.url).pathname; // 形如`/index.html` console.log('收到对文件 ' + pathname + '的请求'); // 读取文件内容 fs.readFile(pathname.substr(1), (err, data) => { if (err) { console.log('文件读取失败:' + err); // 设置404响应 res.writeHead(404, { 'Content-Type': 'text/html' }); } else { // 状态码:200 res.writeHead(200, { 'Content-Type': 'text/html' }); // 响应文件内容 res.write(data.toString()); } // 发送响应 res.end(); });});server.listen(8081);console.log('服务运行在:http://localhost:8081,请访问:http://localhost:8081/index.html');

index.html

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Node http</title></head><body> <h1>Hi~</h1></body></html>

运行server.js,打开浏览器访问。

创建客户端

client.js

/** * node http 创建客户端 */let http = require('http');// 请求选项let options = { host: 'localhost', port: '8081', path: '/index.html'};// 处理响应的回调函数let callback = (res) => { // 不断更新数据 let body = ''; res.on('data', (data) => { body += data; }); res.on('end', () => { console.log('数据接收完成'); console.log(body); });}// 向服务端发送请求let req = http.request(options, callback);req.end();

运行server.js,再运行client.js。

希望本文所述对大家node.js程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章