说说如何使用 Node.js 创立 HTTP 服务器

作者 : 开心源码 本文共1206个字,预计阅读时间需要4分钟 发布时间: 2022-05-13 共159人阅读

1 Node.js 简介

Node.js 是运行在服务端的 JavaScript 。 它是一个异步 I/O、事件驱动模式的 JavaScript 服务端环境,基于 Google 的 V8 引擎, V8 引擎执行 Javascript 的速度快,性能好。

(1)异步 I/O

异步 I/O 遵循 “Don’t call me, I will call you” 准则,相似经典的 Ajax 调用。在 Node.js 中,构建了很多异步 I/O 的 API,比方网络请求、文件读取等等。

执行网络请求后,用户端可以继续执行其它操作,直到 Node.js 返回数据,执行回调函数时为止。

(2)事件驱动

事件驱动指的是:Node.js 把前台浏览器中的事件暴露出来,供业务层调用。这种方式的优势是:轻量级、松耦合以及只关注事务点等优势。

2 Node.js 服务器

Node.js 服务器一般是由以下这些部分组成:

  1. 使用 require 指令来载入 Node.js 模块。

  2. 创立服务器,让其监听用户端请求,相似于 Apache 、Nginx 等 HTTP 服务器。

  3. 用户端使用浏览器或者终端发送 HTTP 请求,服务器接收请求后返回响应数据。

具体代码如下:

/* * 创立 Node.js 应用 * @author Deniro Lee *///引入 require 模块const http = require("http");http.createServer(function (request, response) {    //写入 HTTP 头    response.writeHead(200, {'Content-Type': 'text/html'});    //发送响应数据    response.end('你好,世界:)');}).listen(8000);console.log('服务端已启动,运行地址:http://127.0.0.1:8000/');
  1. 通过 createServer 方法,监听 8000 端口;
  2. 调用 response.writeHead 方法,写入 HTTP 头,200 表示成功。
  3. response.end 方法用于结束响应,告诉用户端所有消息已经发送。如何不调用该函数,用户端将永远处于等待状态。具体语法为:response.end([data], [encoding]),前面的代码示例把 data 传入 response.end 方法,实际上是 response.end(); response.write(data , encoding); 的简写形式。

在 WebStorm 中配置好 Node.js 运行环境:

而后,即可以直接通过 ctrl+shift+F10,运行刚才编写的这段脚本。

在浏览器中输入 http://127.0.0.1:8000/,即可以看到响应内容:

通过指定响应内容的字符集,来处理这里所出现的中文乱码问题:

response.write('<head><meta charset="utf-8"></head>');

<meta> 元素用于定义有关页面的元信息(meta-information)。

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 说说如何使用 Node.js 创立 HTTP 服务器

发表回复