共计 2487 个字符,预计需要花费 7 分钟才能阅读完成。
导读 | Node.js 是用于执行服务器端 JavaScript 代码广泛使用的开源和跨平台 JavaScript 运行时环境,Node.js 公司 NodeSource 今天宣布,他们制作了一个 Snap 软件包,以便 Linux 开发人员能够更轻松地在其操作系统上安装流行的 JavaScript 运行时环境。Snap 是由 Canonical 为 Ubuntu Linux 开发的一种集装箱化的通用二进制包格式。 |
据 Stack Overflow 2018 开发者调查报告,Linux 开发人员的首选开发平台,那么对于运行您最喜爱的编程语言、框架和开发环境的最新版本的需求已经变得越来越重要,而 Canonical 的 Snappy 技术就是答案。
“Node.js snap 包含了 Node.js 运行时以及广泛使用的包管理器 npm,因此只需一个命令,开发人员就可以使用他们选择的 Node.js 版本,不需要外部的 repos 或个人包档案 (PPAs),”NodeSource 说。
使用 Snap 软件包的好处是显而易见的,因为一旦它上游发布,您就会始终收到最新的 Node.js 版本。借助 Canonical 的 Snappy 技术,NodeSource 可以在几小时或几分钟内将最新的 Node.js 版本提供给支持 Snap 的 Linux 系统。
以下是如何在 Ubuntu 以及其他 Linux 发行版将 Node.js 使用 Snap 包
要在启用 Snap 的 GNU/Linux 发行版上安装 Node.js,您只需运行下面的命令即可。Canonical 的 Snappy 技术目前支持 Ubuntu,Debian,Linux Mint,Fedora,Arch Linux,OpenSUSE,Solus,Gentoo Linux 以及其他一些嵌入式操作系统,如 OpenWrt 和 OpenEmbedded。
sudo snap install node --classic --channel=8/stable
如下图:
由于 NodeSource 维护了其 Node.js JavaScript 运行时环境的多个版本,因此它们还可以更轻松地更改频道,并且如果您觉得冒险,则可以安装最新的流行版本。使用下面列出的第一组命令更改通道
sudo snap switch node --channel=9/stable
sudo snap refresh
第二组安装最前沿版本的命令。
sudo snap install node --classic --channel=edge
输入以下命令看看版本:
node -v
v6.11.4
见下图:
第一个 Node.js 程序:Hello World!
脚本模式
以下是我们的第一个 Node.js 程序:
实例
console.log(“Hello World”);
console.log(“Hello World www.linuxidc.com”);
看看如下截图:
创建第一个 Node.js 应用
如果我们使用 PHP 来编写后端的代码时,需要 Apache 或者 Nginx 的 HTTP 服务器,并配上 mod_php5 模块和 php-cgi。
从这个角度看,整个 ” 接收 HTTP 请求并提供 Web 页面 ” 的需求根本不需 要 PHP 来处理。
不过对 Node.js 来说,概念完全不一样了。使用 Node.js 时,我们不仅仅 在实现一个应用,同时还实现了整个 HTTP 服务器。事实上,我们的 Web 应用以及对应的 Web 服务器基本上是一样的。
在我们创建 Node.js 第一个 “Hello, World!” 应用前,让我们先了解下 Node.js 应用是由哪几部分组成的:
1. 引入 required 模块:我们可以使用 require 指令来载入 Node.js 模块。
2. 创建服务器:服务器可以监听客户端的请求,类似于 Apache、Nginx 等 HTTP 服务器。
3. 接收请求与响应请求 服务器很容易创建,客户端可以使用浏览器或终端发送 HTTP 请求,服务器接收请求后返回响应数据。
创建 Node.js 应用
步骤一、引入 required 模块
我们使用 require 指令来载入 http 模块,并将实例化的 HTTP 赋值给变量 http,实例如下:
var http = require(“http”);
步骤二、创建服务器
接下来我们使用 http.createServer() 方法创建服务器,并使用 listen 方法绑定 8888 端口。函数通过 request, response 参数来接收和响应数据。
实例如下,在你项目的根目录下创建一个叫 server.js 的文件,并写入以下代码:
var http = require('http');
http.createServer(function (request, response) {
// 发送 HTTP 头部
// HTTP 状态值: 200 : OK
// 内容类型: text/plain
response.writeHead(200, {'Content-Type': 'text/plain'});
// 发送响应数据 "Hello World"
response.end('Hello World,www.linuxidc.com\n');
}).listen(8888);
// 终端打印如下信息
console.log('Server running at http://127.0.0.1:8888/');
以上代码我们完成了一个可以工作的 HTTP 服务器。
使用 node 命令执行以上的代码:
node server.js
Server running at http://127.0.0.1:8888/
接下来,打开浏览器访问 http://127.0.0.1:8888/,你会看到一个写着 “Hello World,www.linuxidc.com” 的网页。
分析 Node.js 的 HTTP 服务器:
第一行请求(require)Node.js 自带的 http 模块,并且把它赋值给 http 变量。
接下来我们调用 http 模块提供的函数:createServer。这个函数会返回 一个对象,这个对象有一个叫做 listen 的方法,这个方法有一个数值参数,指定这个 HTTP 服务器监听的端口号。