向世界展示你的本地 Node.js 应用
介绍
const express = require("express");
const app = express();
app.get("/", (req, res) => res.send("Hello World!"));
app.listen(3000, () => console.log("Server listening on port 3000!"));
package.json文件:
{
"name": "hello",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "node index.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"express": "4.14.0"
}
}
如果您想跳过此步骤并直接进入比较表,请单击此处。
本地隧道
这是您可以用来向世界展示本地应用的最简单的服务。用作者的话来说,它是为了轻松创建无需设置的隧道而编写的,首先是一个库,其次是一个CLI工具。
不要将它与原始的 localtunnel混淆,显然,后者已因 ngrok 而停止使用。
localtunnel 以 npm 包的形式提供,因此您可以使用以下命令安装它:
npm install -g localtunnel
从任意目录执行lt命令:
lt --port 3000
这将在端口 3000 上设置到本地服务器的隧道,并为您提供一个公共 URL,即使您重新启动或停止服务器,该 URL 仍将保持活动状态:
默认情况下,URL 的域名为localtunnel.me,子域名由随机字符组成。每次重新运行该过程时,此 URL 都会发生变化。
但是,你可以使用选项--subdomain请求子域名(假设可用)。例如:
lt --port 3000 --subdomain hello
在浏览器中:
如前所述,localtunnel 也可以用作库。例如:
const localtunnel = require('localtunnel');
const tunnel = localtunnel(port, { subdomain: 'hello'} (err, tunnel) => {
...
});
tunnel.on('close', function() {
// When the tunnel is closed
});
...
tunnel.close();
恩格罗克
Ngrok是所有这些服务中最受欢迎的。与 localtunnel 一样,ngrok 会在您的机器上创建一条通往本地服务器的安全隧道。
Ngrok 是用 Go 构建的,因此它为每个主要平台提供了二进制包。您只需下载一个 ZIP 文件,解压缩,然后从命令行运行它。
这是推荐的安装方式,但是,还有一个用于 ngrok 的 Node.js 包装器,可以下载适合您平台的 ngrok 二进制文件。
要从解压后的目录中执行 ngrok,请运行以下命令:
./ngrok http 3000
它将在端口 3000 上启动到本地计算机的安全隧道,并在终端中显示带有公共 URL 和其他信息的 UI:
在浏览器中:
Ngrok 还提供了一个 UI 来检查隧道的所有HTTP 流量。只需打开浏览器并转到 https://localhost:4040:
此 UI 还允许您重放任何请求,这对于测试webhook非常有帮助:
就像 localtunnel 一样,每次执行 ngrok 时,您都会获得一个随机子域。您可以使用-subdomain选项指定自定义子域。例如,此命令将为您提供 URL http(s)://hello.ngrok.io:
./ngrok http -subdomain=hello 3000
现在
根据其网站,现在允许您轻松、快速、可靠地将 Node.js 或 Docker 驱动的应用程序部署到云中。
这可以让我们意识到,Now 使用了与以前的服务不同的方法。Now 不会创建到本地主机的安全隧道,而是将您的应用程序部署到云中。
你可能会认为这属于另一个类别,但是你无需使用 Git 之类的东西就可以让你的应用程序在线可用,而且它还具有一些有助于开发的功能,使得现在进入这种比较。
要安装它,我们有三个选择:
- 使用针对 64 位系统的预构建二进制文件。
- 使用 NPM,你可以使用npm install -g now安装 Now(全局)
- 使用Now Desktop 应用程序(仅适用于 Mac),该应用程序也会安装 Now CLI。
安装后,转到您的应用程序目录并输入now。
首次运行此命令时,它会提示您输入电子邮件地址以创建帐户并确认。接下来,它将开始部署您的应用、创建 URL 并将其放在剪贴板上。
部署应用程序可能需要一段时间,但与此同时,您可以转到浏览器并将 URL 粘贴到剪贴板上以查看进度。完成后,它将执行npm start脚本并显示您的应用程序:
如果我们将/_src添加到 URL,我们将看到已部署应用程序的源代码:
如果我们对应用程序进行更改,例如:
...
app.get('/', (req, res) => res.send('Hello World! v2') );
...
<
免责声明:本内容来源于第三方作者授权、网友推荐或互联网整理,旨在为广大用户提供学习与参考之用。所有文本和图片版权归原创网站或作者本人所有,其观点并不代表本站立场。如有任何版权侵犯或转载不当之情况,请与我们取得联系,我们将尽快进行相关处理与修改。感谢您的理解与支持!
请先 登录后发表评论 ~